Július Pastierik / 14. 08. 2008, 00:00
V poslednom pokračovaní makier pre prípravu slov do slovenského slovníka si ukážeme, ako pripravené slovo zapíšeme do výstupného súboru.
Na koniec seriálu makier, ktoré sú určené pre prípravu slov do slovenského slovníka už iba spomeňme, že v makre sme definovali aj také prefixy, ktoré nie sú súčasťou definičného súboru (do, na, nad...). Preto tieto prefixy musíme manuálne pridať k základnému slovu a tak dokážeme pripraviť jediným volaním viacero slov do slovníka.
function otvor_subor_sk_SK_odt (oSubor) as boolean
dim cesty as object
dim url as string
dim novy as boolean
cesty=CreateUnoService("com.sun.star.util.PathSettings")
url=cesty.Work+"/sk_SK.odt"
novy=not FileExists(url)
if novy then
url="private:factory/swriter"
endif
oSubor=StarDesktop.loadComponentFromURL(url, "_blank", 0, Array())
otvor_subor_sk_SK_odt=novy
end function
sub uloz_subor_sk_SK_odt (oSubor, novy)
dim cesty, dispatcher as object
dim url as string
if novy then
cesty=CreateUnoService("com.sun.star.util.PathSettings")
url = cesty.Work+"/sk_SK.odt"
oSubor.storeAsUrl(url, Array())
else
oSubor.store()
endif
'oSubor.dispose()
end sub
function daj_flagy as string
dim pom as string
pom=""
if oDialog_slovnik.model.pfx_F.State=1 then pom=pom+"F"
if oDialog_slovnik.model.sfx_mz.State=1 then pom=pom+"z"
if oDialog_slovnik.model.sfx_Z.State=1 then pom=pom+"Z"
if oDialog_slovnik.model.sfx_U.State=1 then pom=pom+"U"
if oDialog_slovnik.model.sfx_D.State=1 then pom=pom+"D"
if oDialog_slovnik.model.sfx_K.State=1 then pom=pom+"K"
if oDialog_slovnik.model.sfx_M.State=1 then pom=pom+"M"
if oDialog_slovnik.model.sfx_S.State=1 then pom=pom+"S"
if oDialog_slovnik.model.sfx_V.State=1 then pom=pom+"V"
if oDialog_slovnik.model.sfx_A.State=1 then pom=pom+"A"
if oDialog_slovnik.model.sfx_C.State=1 then pom=pom+"C"
if oDialog_slovnik.model.sfx_H.State=1 then pom=pom+"H"
if oDialog_slovnik.model.sfx_B.State=1 then pom=pom+"B"
if oDialog_slovnik.model.sfx_J.State=1 then pom=pom+"J"
if oDialog_slovnik.model.sfx_L.State=1 then pom=pom+"L"
if oDialog_slovnik.model.sfx_O.State=1 then pom=pom+"O"
if oDialog_slovnik.model.sfx_mo.State=1 then pom=pom+"o"
if oDialog_slovnik.model.sfx_Q.State=1 then pom=pom+"Q"
if oDialog_slovnik.model.sfx_Y.State=1 then pom=pom+"Y"
if oDialog_slovnik.model.sfx_I.State=1 then pom=pom+"I"
if oDialog_slovnik.model.sfx_P.State=1 then pom=pom+"P"
if oDialog_slovnik.model.sfx_X.State=1 then pom=pom+"X"
if oDialog_slovnik.model.sfx_E.State=1 then pom=pom+"E"
if oDialog_slovnik.model.sfx_W.State=1 then pom=pom+"W"
if oDialog_slovnik.model.sfx_T.State=1 then pom=pom+"T"
if oDialog_slovnik.model.sfx_R.State=1 then pom=pom+"R"
if oDialog_slovnik.model.sfx_mb.State=1 then pom=pom+"b"
if oDialog_slovnik.model.sfx_c_c.State=1 then pom=pom+"č"
daj_flagy=pom
end function
sub zapis_definiciu
dim vysledok, slovo, pomslovo, sufixy as string
dim dokument, kurzor, oDoc as object
dim novy as boolean
slovo=trim(oDialog_slovnik.model.Slovo_slovnika.Text)
vysledok = ""
if slovo<>"" then
sufixy=daj_flagy
vysledok=sufixy
if oDialog_slovnik.model.pfx_N.State=1 then vysledok="N"+vysledok
if vysledok<>"" then vysledok="/"+vysledok
vysledok=slovo+vysledok
novy=otvor_subor_sk_SK_odt(dokument)
' Základné slovo
kurzor=dokument.currentcontroller.getViewCursor()
kurzor.gotoEnd(false)
if novy then
kurzor.setstring("# verzia: 0.5.7-b2"+chr$(13))
kurzor.gotoEnd(false)
endif
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
' Pre všetky prefixy
vysledok=sufixy
if oDialog_slovnik.model.spfx_do.State=1 then
pomslovo="do"+slovo
if oDialog_slovnik.model.spfx_ne_do.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
vysledok=sufixy
if oDialog_slovnik.model.spfx_na.State=1 then
pomslovo="na"+slovo
if oDialog_slovnik.model.spfx_ne_na.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
vysledok=sufixy
if oDialog_slovnik.model.spfx_nad.State=1 then
pomslovo="nad"+slovo
if oDialog_slovnik.model.spfx_ne_nad.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
vysledok=sufixy
if oDialog_slovnik.model.spfx_o.State=1 then
pomslovo="o"+slovo
if oDialog_slovnik.model.spfx_ne_o.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
vysledok=sufixy
if oDialog_slovnik.model.spfx_ob.State=1 then
pomslovo="ob"+slovo
if oDialog_slovnik.model.spfx_ne_ob.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
vysledok=sufixy
if oDialog_slovnik.model.spfx_po.State=1 then
pomslovo="po"+slovo
if oDialog_slovnik.model.spfx_ne_po.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
vysledok=sufixy
if oDialog_slovnik.model.spfx_pre.State=1 then
pomslovo="pre"+slovo
if oDialog_slovnik.model.spfx_ne_pre.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
vysledok=sufixy
if oDialog_slovnik.model.spfx_pri.State=1 then
pomslovo="pri"+slovo
if oDialog_slovnik.model.spfx_ne_pri.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
vysledok=sufixy
if oDialog_slovnik.model.spfx_spolu.State=1 then
pomslovo="spolu"+slovo
if oDialog_slovnik.model.spfx_ne_spolu.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
vysledok=sufixy
if oDialog_slovnik.model.spfx_roz.State=1 then
pomslovo="roz"+slovo
if oDialog_slovnik.model.spfx_ne_roz.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
vysledok=sufixy
if oDialog_slovnik.model.spfx_spo.State=1 then
pomslovo="spo"+slovo
if oDialog_slovnik.model.spfx_ne_spo.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
vysledok=sufixy
if oDialog_slovnik.model.spfx_u.State=1 then
pomslovo="u"+slovo
if oDialog_slovnik.model.spfx_ne_u.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
vysledok=sufixy
if oDialog_slovnik.model.spfx_vy.State=1 then
pomslovo="vy"+slovo
if oDialog_slovnik.model.spfx_ne_vy.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
vysledok=sufixy
if oDialog_slovnik.model.spfx_vy_y.State=1 then
pomslovo="vý"+slovo
if oDialog_slovnik.model.spfx_ne_vy_y.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
vysledok=sufixy
if oDialog_slovnik.model.spfx_z.State=1 then
pomslovo="z"+slovo
if oDialog_slovnik.model.spfx_ne_z.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
vysledok=sufixy
if oDialog_slovnik.model.spfx_za.State=1 then
pomslovo="za"+slovo
if oDialog_slovnik.model.spfx_ne_za.State=1 then
vysledok="N"+vysledok
endif
if vysledok<>"" then vysledok="/"+vysledok
vysledok=pomslovo+vysledok
kurzor.setstring(vysledok+chr$(13))
kurzor.gotoEnd(false)
endif
uloz_subor_sk_SK_odt (dokument, novy)
endif
end sub
sub Skontroluj_slovo
DialogLibraries.LoadLibrary("SK_SK_Slovnik")
oDialog_slovnik=CreateUnoDialog(DialogLibraries.SK_SK_Slovnik.Dialog_slovnik)
if not nacitana_definicia then
nacitana_definicia=Slovnik_init.citaj_definiciu
endif
if nacitana_definicia then
Slovnik_init.slovnik_init(oDialog)
if oDialog_slovnik.Execute()=1 then
zapis_definiciu
endif
endif
oDialog_slovnik.dispose()
end sub
Copyright © 2002 - 2013 inet.sk, s. r. o. | Všetky práva vyhradené | Neprešlo jazykovou úpravou | ISSN 1336-1899
Využívame kvalitný webhosting za rozumnú cenu od Inet.sk