Po zoznámení sa s makrami pre prácu s pracovným oknom nám zostáva ukázať vlastnú funkciu, pomocou ktorej dokážete nastavené parametre aplikovať vo vybranom texte. Na zosnímaných obrazovkách zároveň vidíte, ako text podľa rôznych nastavení dokážete jednoducho formátovať.


REM Vlastné nastavenie – volané pri stlačení tlačidla "Nastav"
sub nastav_text
dim Dokument, riadok, vyber as object
dim vyber_pocet, vyber_ktory as long
dim pom_text as string
Dokument=ThisComponent
vyber=dokument.getCurrentSelection() ' aktualny vyber
vyber_pocet=vyber.getCount() ' Pocet vyberov
for vyber_ktory=0 to vyber_pocet-1
riadok = vyber.getByIndex(vyber_ktory)
REM Šikmé písmo
if oDlgn.model.FontSlantCheck.State=1 then
pom_text=trim(oDlgn.getControl("FontSlantBox").Text)
select case pom_text
case "None"
riadok.CharPosture=com.sun.star.awt.FontSlant.NONE
case "Oblique"
riadok.CharPosture=com.sun.star.awt.FontSlant.OBLIQUE
case "Italic"
riadok.CharPosture=com.sun.star.awt.FontSlant.ITALIC
case "Don't Know"
riadok.CharPosture=com.sun.star.awt.FontSlant.DONTKNOW
case "Reverse Oblique"
riadok.CharPosture=com.sun.star.awt.FontSlant.REVERSE_OBLIQUE
case "Reverse Italic"
riadok.CharPosture=com.sun.star.awt.FontSlant.REVERSE_ITALIC
end select
endif
REM Hrúbka písma
if oDlgn.model.FontWeightCheck.State=1 then
pom_text=trim(oDlgn.getControl("FontWeightBox").Text)
select case pom_text
case "Don't Know"
riadok.CharWeight=com.sun.star.awt.FontWeight.DONTKNOW
case "Thin"
riadok.CharWeight=com.sun.star.awt.FontWeight.THIN
case "Ultra Light"
riadok.CharWeight=com.sun.star.awt.FontWeight.ULTRALIGHT
case "Light"
riadok.CharWeight=com.sun.star.awt.FontWeight.LIGHT
case "Semi Light"
riadok.CharWeight=com.sun.star.awt.FontWeight.SEMILIGHT
case "Normal"
riadok.CharWeight=com.sun.star.awt.FontWeight.NORMAL
case "Semi Bold"
riadok.CharWeight=com.sun.star.awt.FontWeight.SEMIBOLD
case "Bold"
riadok.CharWeight=com.sun.star.awt.FontWeight.BOLD
case "Ultra Bold"
riadok.CharWeight=com.sun.star.awt.FontWeight.ULTRABOLD
case "Black"
riadok.CharWeight=com.sun.star.awt.FontWeight.BLACK
end select
endif
REM Hrúbka šírka
if oDlgn.model.FontWidthCheck.State=1 then
pom_text=trim(oDlgn.getControl("FontWidthBox").Text)
select case pom_text
case "Don't Know"
riadok.CharScaleWidth=com.sun.star.awt.FontWidth.DONTKNOW
case "Ultra Condensed"
riadok.CharScaleWidth=com.sun.star.awt.FontWidth.ULTRACONDENSED
case "Extra Condensed"
riadok.CharScaleWidth=com.sun.star.awt.FontWidth.EXTRACONDENSED
case "Condensed"
riadok.CharScaleWidth=com.sun.star.awt.FontWidth.CONDENSED
case "Semi Condensed"
riadok.CharScaleWidth=com.sun.star.awt.FontWidth.SEMICONDENSED
case "Normal"
riadok.CharScaleWidth=com.sun.star.awt.FontWidth.NORMAL
case "Semi Expanded"
riadok.CharScaleWidth=com.sun.star.awt.FontWidth.SEMIEXPANDED
case "Expanded"
riadok.CharScaleWidth=com.sun.star.awt.FontWidth.EXPANDED
case "Extra Expanded"
riadok.CharScaleWidth=com.sun.star.awt.FontWidth.EXTRAEXPANDED
case "Ultra Expanded"
riadok.CharScaleWidth=com.sun.star.awt.FontWidth.ULTRAEXPANDED
end select
endif
REM Reliéf písma
if oDlgn.model.FontReliefCheck.State=1 then
pom_text=trim(oDlgn.getControl("FontReliefBox").Text)
select case pom_text
case "None"
riadok.CharRelief=com.sun.star.awt.FontRelief.NONE
case "Embossed"
riadok.CharRelief=com.sun.star.awt.FontRelief.EMBOSSED
case "Engraved"
riadok.CharRelief=com.sun.star.awt.FontRelief.ENGRAVED
end select
endif
REM Prečiarknutie písma
if oDlgn.model.FontStrikeoutCheck.State=1 then
pom_text=trim(oDlgn.getControl("FontStrikeoutBox").Text)
select case pom_text
case "None"
riadok.CharStrikeout=com.sun.star.awt.FontStrikeout.NONE
case "Single"
riadok.CharStrikeout=com.sun.star.awt.FontStrikeout.SINGLE
case "Double"
riadok.CharStrikeout=com.sun.star.awt.FontStrikeout.DOUBLE
case "Don't Know"
riadok.CharStrikeout=com.sun.star.awt.FontStrikeout.DONTKNOW
case "Bold"
riadok.CharStrikeout=com.sun.star.awt.FontStrikeout.BOLD
case "Slash"
riadok.CharStrikeout=com.sun.star.awt.FontStrikeout.SLASH
case "X"
riadok.CharStrikeout=com.sun.star.awt.FontStrikeout.X
end select
endif
REM Podčiarknutie písma
if oDlgn.model.FontUnderlineCheck.State=1 then
pom_text=trim(oDlgn.getControl("FontUnderlineBox").Text)
select case pom_text
case "None"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.NONE
case "Single"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.SINGLE
case "Double"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.DOUBLE
case "Dotted"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.DOTTED
case "Don't Know"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.DONTKNOW
case "Dash"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.DASH
case "Long Dash"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.LONGDASH
case "Dash Dot"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.DASHDOT
case "Dash Dot Dot"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.DASHDOTDOT
case "Small Wave"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.SMALLWAVE
case "Wave"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.WAVE
case "Double Wave"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.DOUBLEWAVE
case "Bold"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.BOLD
case "Bold Dotted"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.BOLDDOTTED
case "Bold Dash"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.BOLDDASH
case "Bold Long Dash"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.BOLDLONGDASH
case "Bold Dash Dot"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.BOLDDASHDOT
case "Bold Dash Dot Dot"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.BOLDDASHDOTDOT
case "Bold Wave"
riadok.CharUnderline=com.sun.star.awt.FontUnderline.BOLDWAVE
end select
endif
REM Nadčiarknutie písma
if oDlgn.model.FontOverlineCheck.State=1 then
pom_text=trim(oDlgn.getControl("FontOverlineBox").Text)
select case pom_text
case "None"
riadok.CharOverline=com.sun.star.awt.FontUnderline.NONE
case "Single"
riadok.CharOverline=com.sun.star.awt.FontUnderline.SINGLE
case "Double"
riadok.CharOverline=com.sun.star.awt.FontUnderline.DOUBLE
case "Dotted"
riadok.CharOverline=com.sun.star.awt.FontUnderline.DOTTED
case "Don't Know"
riadok.CharOverline=com.sun.star.awt.FontUnderline.DONTKNOW
case "Dash"
riadok.CharOverline=com.sun.star.awt.FontUnderline.DASH
case "Long Dash"
riadok.CharOverline=com.sun.star.awt.FontUnderline.LONGDASH
case "Dash Dot"
riadok.CharOverline=com.sun.star.awt.FontUnderline.DASHDOT
case "Dash Dot Dot"
riadok.CharOverline=com.sun.star.awt.FontUnderline.DASHDOTDOT
case "Small Wave"
riadok.CharOverline=com.sun.star.awt.FontUnderline.SMALLWAVE
case "Wave"
riadok.CharOverline=com.sun.star.awt.FontUnderline.WAVE
case "Double Wave"
riadok.CharOverline=com.sun.star.awt.FontUnderline.DOUBLEWAVE
case "Bold"
riadok.CharOverline=com.sun.star.awt.FontUnderline.BOLD
case "Bold Dotted"
riadok.CharOverline=com.sun.star.awt.FontUnderline.BOLDDOTTED
case "Bold Dash"
riadok.CharOverline=com.sun.star.awt.FontUnderline.BOLDDASH
case "Bold Long Dash"
riadok.CharOverline=com.sun.star.awt.FontUnderline.BOLDLONGDASH
case "Bold Dash Dot"
riadok.CharOverline=com.sun.star.awt.FontUnderline.BOLDDASHDOT
case "Bold Dash Dot Dot"
riadok.CharOverline=com.sun.star.awt.FontUnderline.BOLDDASHDOTDOT
case "Bold Wave"
riadok.CharOverline=com.sun.star.awt.FontUnderline.BOLDWAVE
end select
endif
next vyber_ktory
End Sub