Makrá v OpenOffice.org – nastavovanie indexov II.

Július Pastierik  /  15. 09. 2010, 00:00

V ďalšom pokračovaní seriálu o makrách pre nastavovanie indexov si o.i. ukážeme procedúry pre nastavenie zmeny umiestnenia indexov.

V druhom pokračovaní makier pre nastavovanie indexov budeme pokračovať tam, kde sme minule prestali a makrá doplníme o procedúry, pomocou ktorých dokážeme nastavovať indexy pomocou tlačidiel „Nastav“ priamo počas ich definície. Okrem toho si ukážeme procedúry pre zmenu umiestnenia indexov. Aby sme ošetrili všetky možné prípady, budeme v makrách testovať, či je otvorené dialógové okno a ak áno, tak tam zmenené hodnoty v príslušných políčkach aj zobrazíme.

REM Procedúra pre nastavenie horného indexu počas definície hodnôt (volané stlačením klávesy "Nastav" v dialógu)
sub JPNI_Nastav_HI_Initiated
 dim Kurzor as object
 
 JP_Nastav_index_HI_V=val(JP_Nastav_index_dlg.model.HI_V.text) ' Aktuálne nastavená veľkosť (1 až 100%)
 JP_Nastav_index_HI_O=val(JP_Nastav_index_dlg.model.HI_O.text) ' Aktuálne nastavené odsadenie (0 až 101%)
 
 if JP_Nastav_index_HI_V<1 then JP_Nastav_index_HI_V=1
 if JP_Nastav_index_HI_V>100 then JP_Nastav_index_HI_V=100

 if JP_Nastav_index_HI_O<0 then JP_Nastav_index_HI_O=0
 if JP_Nastav_index_HI_O>101 then JP_Nastav_index_HI_V=101
 
 kurzor=ThisComponent.currentcontroller.getViewCursor() ' viditeľný kurzor
 kurzor.CharEscapement=JP_Nastav_index_HI_O ' Percentuálne odsadenie horného indexu nad bežný text
 kurzor.CharEscapementHeight=JP_Nastav_index_HI_V ' Percentuálna veľkosť horného indexu
end sub

REM Procedúra pre nastavenie dolného indexu počas definície hodnôt (volané stlačením klávesy "Nastav" v dialógu)
sub JPNI_Nastav_DI_Initiated
 dim Kurzor as object

 JP_Nastav_index_DI_V=val(JP_Nastav_index_dlg.model.DI_V.text) ' Aktuálne nastavená veľkosť (1 až 100%)
 JP_Nastav_index_DI_O=val(JP_Nastav_index_dlg.model.DI_O.text) ' Aktuálne nastavené odsadenie (0 až 101%)
 
 if JP_Nastav_index_DI_V<1 then JP_Nastav_index_DI_V=1
 if JP_Nastav_index_DI_V>100 then JP_Nastav_index_DI_V=100

 if JP_Nastav_index_DI_O<0 then JP_Nastav_index_DI_O=0
 if JP_Nastav_index_DI_O>101 then JP_Nastav_index_DI_V=101
 
 kurzor=ThisComponent.currentcontroller.getViewCursor() ' viditeľný kurzor
 kurzor.CharEscapement=0-JP_Nastav_index_DI_O ' Percentuálne odsadenie dolného indexu pod bežný text – spodný index sa nastavuje zápornými hodnotami
 kurzor.CharEscapementHeight=JP_Nastav_index_DI_V ' Percentuálna veľkosť dolného indexu
end sub

REM Procedúra pre posun odsunu horného indexu o +10
sub Posun_HO_P10
 dim Kurzor as object
 
 Testuj_nulove_hodnoty ' Testovanie a prípadné nastavnie štandardných hodnôt
 if JP_Nastav_index_HI_O<=91 then JP_Nastav_index_HI_O=JP_Nastav_index_HI_O+10
 if JP_Nastav_Index_dialog then JP_Nastav_index_dlg.model.HI_O.text=trim(str(JP_Nastav_index_HI_O)) ' Nastavenie indexu do dialógu
 
 kurzor=ThisComponent.currentcontroller.getViewCursor() ' viditeľný kurzor
 kurzor.CharEscapement=JP_Nastav_index_HI_O ' Percentuálne odsadenie horného indexu nad bežný text
 kurzor.CharEscapementHeight=JP_Nastav_index_HI_V ' Percentuálna veľkosť horného indexu
end sub

REM Procedúra pre posun odsunu horného indexu o +1
sub Posun_HO_P1
 dim Kurzor as object
 
 Testuj_nulove_hodnoty ' Testovanie a prípadné nastavnie štandardných hodnôt
 if JP_Nastav_index_HI_O<101 then JP_Nastav_index_HI_O=JP_Nastav_index_HI_O+1
 if JP_Nastav_Index_dialog then JP_Nastav_index_dlg.model.HI_O.text=trim(str(JP_Nastav_index_HI_O)) ' Nastavenie indexu do dialógu

 kurzor=ThisComponent.currentcontroller.getViewCursor() ' viditeľný kurzor
 kurzor.CharEscapement=JP_Nastav_index_HI_O ' Percentuálne odsadenie horného indexu nad bežný text
 kurzor.CharEscapementHeight=JP_Nastav_index_HI_V ' Percentuálna veľkosť horného indexu
end sub

REM Procedúra pre posun odsunu horného indexu o –10
sub Posun_HO_M10
 dim Kurzor as object
 
 Testuj_nulove_hodnoty ' Testovanie a prípadné nastavnie štandardných hodnôt
 if JP_Nastav_index_HI_O>=10 then JP_Nastav_index_HI_O=JP_Nastav_index_HI_O-10
 if JP_Nastav_Index_dialog then JP_Nastav_index_dlg.model.HI_O.text=trim(str(JP_Nastav_index_HI_O)) ' Nastavenie indexu do dialógu
 
 kurzor=ThisComponent.currentcontroller.getViewCursor() ' viditeľný kurzor
 kurzor.CharEscapement=JP_Nastav_index_HI_O ' Percentuálne odsadenie horného indexu nad bežný text
 kurzor.CharEscapementHeight=JP_Nastav_index_HI_V ' Percentuálna veľkosť horného indexu
end sub

REM Procedúra pre posun odsunu horného indexu o –1
sub Posun_HO_M1
 dim Kurzor as object
 
 Testuj_nulove_hodnoty ' Testovanie a prípadné nastavnie štandardných hodnôt
 if JP_Nastav_index_HI_O>=1 then JP_Nastav_index_HI_O=JP_Nastav_index_HI_O-1
 if JP_Nastav_Index_dialog then JP_Nastav_index_dlg.model.HI_O.text=trim(str(JP_Nastav_index_HI_O)) ' Nastavenie indexu do dialógu

 kurzor=ThisComponent.currentcontroller.getViewCursor() ' viditeľný kurzor
 kurzor.CharEscapement=JP_Nastav_index_HI_O ' Percentuálne odsadenie horného indexu nad bežný text
 kurzor.CharEscapementHeight=JP_Nastav_index_HI_V ' Percentuálna veľkosť horného indexu
end sub

REM Procedúra pre posun odsunu dolného indexu o +10
sub Posun_DO_P10
 dim Kurzor as object
 
 Testuj_nulove_hodnoty ' Testovanie a prípadné nastavnie štandardných hodnôt
 if JP_Nastav_index_DI_O<=91 then JP_Nastav_index_DI_O=JP_Nastav_index_DI_O+10
 if JP_Nastav_Index_dialog then JP_Nastav_index_dlg.model.DI_O.text=trim(str(JP_Nastav_index_DI_O)) ' Nastavenie indexu do dialógu

 kurzor=ThisComponent.currentcontroller.getViewCursor() ' viditeľný kurzor
 kurzor.CharEscapement=0-JP_Nastav_index_DI_O ' Percentuálne odsadenie dolného indexu pod bežný text – spodný index sa nastavuje zápornými hodnotami
 kurzor.CharEscapementHeight=JP_Nastav_index_DI_V ' Percentuálna veľkosť dolného indexu
end sub

REM Procedúra pre posun odsunu dolného indexu o +1
sub Posun_DO_P1
 dim Kurzor as object
 
 Testuj_nulove_hodnoty ' Testovanie a prípadné nastavnie štandardných hodnôt
 if JP_Nastav_index_DI_O<101 then JP_Nastav_index_DI_O=JP_Nastav_index_DI_O+1
 if JP_Nastav_Index_dialog then JP_Nastav_index_dlg.model.DI_O.text=trim(str(JP_Nastav_index_DI_O)) ' Nastavenie indexu do dialógu

 kurzor=ThisComponent.currentcontroller.getViewCursor() ' viditeľný kurzor
 kurzor.CharEscapement=0-JP_Nastav_index_DI_O ' Percentuálne odsadenie dolného indexu pod bežný text – spodný index sa nastavuje zápornými hodnotami
 kurzor.CharEscapementHeight=JP_Nastav_index_DI_V ' Percentuálna veľkosť dolného indexu
end sub

REM Procedúra pre posun odsunu dolného indexu o –10
sub Posun_DO_M10
 dim Kurzor as object
 
 Testuj_nulove_hodnoty ' Testovanie a prípadné nastavnie štandardných hodnôt
 if JP_Nastav_index_DI_O>=10 then JP_Nastav_index_DI_O=JP_Nastav_index_DI_O-10
 if JP_Nastav_Index_dialog then JP_Nastav_index_dlg.model.DI_O.text=trim(str(JP_Nastav_index_DI_O)) ' Nastavenie indexu do dialógu

 kurzor=ThisComponent.currentcontroller.getViewCursor() ' viditeľný kurzor
 kurzor.CharEscapement=0-JP_Nastav_index_DI_O ' Percentuálne odsadenie dolného indexu pod bežný text – spodný index sa nastavuje zápornými hodnotami
 kurzor.CharEscapementHeight=JP_Nastav_index_DI_V ' Percentuálna veľkosť dolného indexu
end sub

REM Procedúra pre posun odsunu dolného indexu o –1
sub Posun_DO_M1
 dim Kurzor as object
 
 Testuj_nulove_hodnoty ' Testovanie a prípadné nastavnie štandardných hodnôt
 if JP_Nastav_index_DI_O>=1 then JP_Nastav_index_DI_O=JP_Nastav_index_DI_O-1
 if JP_Nastav_Index_dialog then JP_Nastav_index_dlg.model.DI_O.text=trim(str(JP_Nastav_index_DI_O)) ' Nastavenie indexu do dialógu

 kurzor=ThisComponent.currentcontroller.getViewCursor() ' viditeľný kurzor
 kurzor.CharEscapement=0-JP_Nastav_index_DI_O ' Percentuálne odsadenie dolného indexu pod bežný text – spodný index sa nastavuje zápornými hodnotami
 kurzor.CharEscapementHeight=JP_Nastav_index_DI_V ' Percentuálna veľkosť dolného indexu
end sub

 

Neprehliadnite: