This file is indexed.

/usr/lib/libreoffice/share/extensions/DmathsAddon/Dmaths/TailleEquations.xba is in libreoffice-dmaths 3.4+dfsg1-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
<script:module xmlns:script="http://openoffice.org/2000/script" script:name="TailleEquations" script:language="StarBasic">&apos;********************************************************************************
&apos;Copyright (C) 2003 Laurent Godard
&apos;dev.godard@wanadoo.fr
&apos;and Didier Dorange-Pattoret (C) 2003-2008
&apos; ddorange@free.fr
&apos;
&apos;
&apos;This library is free software; you can redistribute it and/or
&apos;modify it under the terms of the GNU Lesser General Public
&apos;License as published by the Free Software Foundation; either
&apos;version 2.1 of the License, or (at your option) any later version.

&apos;This library is distributed in the hope that it will be useful,
&apos;but WITHOUT ANY WARRANTY; without even the implied warranty of
&apos;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
&apos;Lesser General Public License for more details.
&apos;http://www.opensource.org/licenses/lgpl-license.php

&apos;You should have received a copy of the GNU Lesser General Public
&apos;License along with this library; if not, write to the Free Software
&apos;Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
&apos;******************************************************************************
&apos;
&apos;3 modes
&apos;- 1 objet selectionné : n&apos;influe que sur celui ci
&apos;- Rien n&apos;est selectionné : influe sur tout le document
&apos;- Une portion de texte est selectionnée : influe sur les formules incluses
&apos;
&apos;
Public oTailleFormule as Object &apos;ajouté par Didier Dorange-Pattoret
Public LaTaille as integer &apos;ajouté par Didier Dorange-Pattoret
Public LaFormule,MonBureau,MonDocument,pgb,LesObjets,oVCursor,oSapos as Object &apos;ajouté par Didier Dorange-Pattoret
Public oProvider, oDispHelper as Object &apos;ajouté par Didier Dorange-Pattoret
Public LeTexteATraiter as Object
Public cas, increment as integer
Public NbreCaracTraite as Integer
Public bChangeTaille, bEncadre as Boolean rem True si on change la taille, false si on augmente ou diminue


Sub EncadreFormule &apos;macro pour encadrer une formule
Call VerifOperationnel
bEncadre = True
LanceModifFormule
End Sub


Sub AffecteTailleFormule
Call VerifOperationnel
bChangeTaille=True
LanceModifFormule
End Sub

Sub AugmenteTailleFormule
Call VerifOperationnel
increment = 1
LanceModifFormule
&apos;augmente la taille d&apos;un point
End Sub

Sub DiminueTailleFormule
Call VerifOperationnel
increment = -1
&apos;Diminue la taille d&apos;une pointLanceModifFormule
LanceModifFormule
End Sub


Sub LanceModifFormule
	
&apos;Change la taille de la police
	If bChangeTaille= True Then oTailleFormule = LoadDialog(&quot;Dmaths&quot;,&quot;TailleFormule&quot; ) &apos;ajouté par Didier Dorange-Pattoret
	MonBureau = createUnoService(&quot;com.sun.star.frame.Desktop&quot;)
	MonDocument = MonBureau.getCurrentComponent
	LaFormule = MonDocument.getCurrentSelection()
	oVCursor = MonDocument.currentcontroller.getViewCursor()
	oProvider = ThisComponent.CurrentController.Frame
    oDispHelper = createUnoService(&quot;com.sun.star.frame.DispatchHelper&quot;)
rem Xray.Xray MonBureau

	If IsEmpty(oVCursor.TextTable) Then &apos;ajouté par Didier DP
		oVcurs = oVcursor
	Else
		oVcurs = oVCursor.Cell.createTextCursor
	EndIf

	if IsNull(LaFormule) then
    Message=sVocab(iLang,302)+chr(10)
    message=message+sVocab(iLang,303)+chr(10)
    message=message+chr(10)+sVocab(iLang,304)
    msgbox message,64,sVocab(iLang,305)
    exit sub
	endif
	

	if LaFormule.getImplementationName = &quot;SwXTextEmbeddedObject&quot; then
    &apos;un objet seul est selectionné
    cas=1
    oDispHelper.executeDispatch(oProvider, &quot;.uno:Escape&quot;, &quot;&quot;, 0, Array()) 
    oVCursor.GoRight(1,False) &apos;ajouté par Didier DP
    else
	    if MonDocument.getcurrentcontroller.viewcursor.iscollapsed then
	        cas=2 &apos;rien selectionné --&gt; on applique à tout
	        laFormule = MonDocument  
	        rem objet Text dont les caracteres sont etudies
	        LeTexteATraiter = monDocument.Text      			
			oVCurs.GoLeft(1,False)
		       
	    else
	        cas=3 &apos;portion sélectionnée
	        LeTexteATraiter = MonDocument.getcurrentcontroller.viewcursor.Text
	        rem objet Text dont les caracteres sont etudies
	        laFormule=laformule.getbyIndex(0)
	        MonEnum=laFormule.getAvailableServiceNames
	        LesObjets=LaFormule.createContentEnumeration(monEnum(0))
	        oVCurs.GoLeft(1,False)
	       	        
	    endif
	    &apos;mise en place barre de progression
	    nombreMax=MonDocument.drawpage.count
	    pgb=MonDocument.currentcontroller.statusIndicator
	    pgb.Start (sVocab(iLang,306),nombreMax)
	    pgb.value=0    
	endif

	oSapos = oVCurs.GetEnd &apos;ajouté par Didier DP

	If bChangeTaille =True Then	&apos;cette partie rappelle les propriétés d&apos;une formule sélectionnée.
		If cas = 1 Then						
			oTailleFormule.Model.ComboBox2.Text = DetermineTaille (LaFormule)
			oTailleFormule.Model.ComboBox1.Text = LaFormule.EmbeddedObject.FontNameVariables
			If LaFormule.embeddedobject.FontVariablesIsItalic = False Then
			oTailleFormule.Model.CheckBox1.State = 0
			Else
			oTailleFormule.Model.CheckBox1.State = 1
			Endif
			
			&apos; CheckBox5 for property FontTextIsItalic added by Gisbert
			If LaFormule.embeddedobject.FontTextIsItalic = False Then
			oTailleFormule.Model.CheckBox5.State = 0
			Else
			oTailleFormule.Model.CheckBox5.State = 1
			Endif

			If LaFormule.embeddedobject.IsTextMode = False Then
			oTailleFormule.Model.CheckBox2.State = 0 
			Else 
			oTailleFormule.Model.CheckBox2.State = 1
			Endif

			If LaFormule.embeddedobject.FontVariablesIsBold = False Then
			oTailleFormule.Model.CheckBox3.State = 0 
			Else 
			oTailleFormule.Model.CheckBox3.State = 1
			Endif

			If LaFormule.GetPropertyValue(&quot;LeftBorder&quot;).OuterLineWidth&lt;&gt;0 Then oTailleFormule.Model.CheckBox4.State = 1
		Else
			If bTailleFormCarac = TRUE Then 				
				oTailleFormule.Model.ComboBox2.Text = oVCursor.CharHeight
			Else
				oTailleFormule.Model.ComboBox2.Text = iTailleFormules
			Endif
			If bPoliceFormCarac = True Then 
				If Len(oVCursor.CharFontName)&gt;0 Then 
					oTailleFormule.Model.ComboBox1.Text = oVCursor.CharFontName
				Else
					oTailleFormule.Model.ComboBox1.Text = monDocument.Text.End.CharFontName
				Endif
			Else
				oConfigAccess = GetConfigAccess( &quot;/org.openoffice.Office.Math&quot;, True )
				IdFontVariable = oConfigAccess.StandardFormat.GetByName(&quot;VariableFont&quot;)
				If Len(IdFontVariable)&gt;0 and oConfigAccess.FontFormatList.HasByName(IdFontVariable) Then
						 oTailleFormule.Model.ComboBox1.Text = oConfigAccess.FontFormatList.GetByName(IdFontVariable).Name					
				Else
					oTailleFormule.Model.ComboBox1.Text = &quot;Thorndale&quot;
				Endif
			Endif
		Endif
 
		oTailleFormule.Execute()

	Else
		Call ChangeTaille(increment,true)
	End If &apos;ajouté par Didier Dorange-Pattoret
End Sub
	


Sub FixeTailleFormule
	Rem reinitialise a 0
	NbreCaracTraite = 0
	LaTaille = oTailleFormule.Model.ComboBox2.Text
	if IsNumeric(LaTaille) then
	Call ChangeTaille(LaTaille, false)
	endif
	FinTailleFormule
End Sub

Sub FinTailleFormule 			&apos;ajouté par Didier Dorange-Pattoret
	oTailleFormule.EndExecute()	&apos;ajouté par Didier Dorange-Pattoret
	If not IsEmpty(pgb) then pgb.end						&apos;ajouté par Didier Dorange-Pattoret
End Sub



&apos;***********************************************************************
Sub ChangeTaille(increment as long, Relatif as boolean)
    Dim iBord as Integer
	Dim LeNumeroDeVersion as Integer    
    &apos;on error resume next

    If bChangeTaille= True Then
        If oTailleFormule.Model.CheckBox4.State = 1 Then
        bEncadre = True
        iBord = 2
        Else
        iBord = 0
        Endif
    EndIf

	LeNumeroDeVersion = OOoNumVersion() rem memorise le numero de Version

    select case cas
       
        case 1:
                if LaFormule.embeddedObject.getImplementationName=&quot;com.sun.star.comp.math.FormulaDocument&quot; then
                    iTaille=LaFormule.Width
                    ChangeSize(LaFormule.embeddedObject,increment,relatif)
                    If bChangeTaille = True Then
                    	LaFormule.EmbeddedObject.FontNameVariables = oTailleFormule.Model.ComboBox1.Text
	  					LaFormule.EmbeddedObject.FontNameNumbers = oTailleFormule.Model.ComboBox1.Text
	  					LaFormule.EmbeddedObject.FontNameText = oTailleFormule.Model.ComboBox1.Text
	 					LaFormule.EmbeddedObject.FontNameFunctions = oTailleFormule.Model.ComboBox1.Text
                        LaFormule.embeddedobject.FontVariablesIsItalic = (oTailleFormule.Model.CheckBox1.State = 1)
&apos; next line added by Gisbert
                        LaFormule.embeddedobject.FontTextIsItalic = (oTailleFormule.Model.CheckBox5.State = 1)
                        LaFormule.embeddedobject.IsTextMode = (oTailleFormule.Model.CheckBox2.State = 1)
                        LaFormule.embeddedobject.FontTextIsBold = (oTailleFormule.Model.CheckBox3.State = 1)
                        LaFormule.embeddedobject.FontFunctionsIsBold = (oTailleFormule.Model.CheckBox3.State = 1)
                        LaFormule.embeddedobject.FontVariablesIsBold = (oTailleFormule.Model.CheckBox3.State = 1)
                        LaFormule.embeddedobject.FontNumbersIsBold = (oTailleFormule.Model.CheckBox3.State = 1)
                        
                    Endif                 
                    If bChangeTaille= True Then
                           EncadrerFormule(LaFormule,iBord)
                    Elseif bEncadre = TRUE Then
                        EncadrerFormule(LaFormule,2-LaFormule.GetPropertyValue(&quot;LeftBorder&quot;).OuterLineWidth)
                    Endif                    
                    LaFormule.embeddedObject.Formula=LaFormule.embeddedObject.Formula+&quot;&quot;
                    LaFormule.embeddedObject.setmodified(true)
                     If (LaFormule.Width=iTaille and LeNumeroDeVersion &lt; 300 ) Then GereBugChangementTaille(laFormule)
                 endif
                 LaFormule.LeftMargin = iMargesFormules*100
                 LaFormule.RightMargin = iMargesFormules*100
                 MonDocument.getcurrentcontroller.Select(LaFormule) &apos;ajouté par Didier DP
                 
        case 2:
            LesObjets=Laformule.getEmbeddedObjects
            for i=0 to LesObjets.count-1
                pgb.value=i
                LaFormule=LesObjets(i)
                if LaFormule.getImplementationName=&quot;SwXTextEmbeddedObject&quot; then
                			on error resume next
                        if LaFormule.embeddedObject.getImplementationName=&quot;com.sun.star.comp.math.FormulaDocument&quot; then                        	
                            iTaille = LaFormule.Width
                            ChangeSize(LaFormule.embeddedObject,increment,relatif)
                            If bChangeTaille = True Then
                            LaFormule.EmbeddedObject.FontNameVariables = oTailleFormule.Model.ComboBox1.Text
	  						LaFormule.EmbeddedObject.FontNameNumbers = oTailleFormule.Model.ComboBox1.Text
	  						LaFormule.EmbeddedObject.FontNameText = oTailleFormule.Model.ComboBox1.Text
	 						LaFormule.EmbeddedObject.FontNameFunctions = oTailleFormule.Model.ComboBox1.Text  
                            LaFormule.embeddedobject.FontVariablesIsItalic = (oTailleFormule.Model.CheckBox1.State = 1)
&apos; next added line by Gisbert
                            LaFormule.embeddedobject.FontTextIsItalic = (oTailleFormule.Model.CheckBox5.State = 1)
                            LaFormule.embeddedobject.IsTextMode = (oTailleFormule.Model.CheckBox2.State = 1)
                            LaFormule.embeddedobject.FontTextIsBold = (oTailleFormule.Model.CheckBox3.State = 1)
                            LaFormule.embeddedobject.FontFunctionsIsBold = (oTailleFormule.Model.CheckBox3.State = 1)
                            LaFormule.embeddedobject.FontVariablesIsBold = (oTailleFormule.Model.CheckBox3.State = 1)
                            LaFormule.embeddedobject.FontNumbersIsBold = (oTailleFormule.Model.CheckBox3.State = 1) 
                           	rem incremente de 1 le nombre de caracteres traites de 1
                            NbreCaracTraite = NbreCaracTraite + 1                     
                            Endif
                            If bChangeTaille= True Then
                                   EncadrerFormule(LaFormule,iBord)
                            Elseif bEncadre = TRUE Then
                                EncadrerFormule(LaFormule,2-LaFormule.GetPropertyValue(&quot;LeftBorder&quot;).OuterLineWidth)
                            Endif
                            LaFormule.EmbeddedObject.Modified=True
                            LaFormule.EmbeddedObject.SetModified(True)
                            If (LaFormule.Width=iTaille and LeNumeroDeVersion &lt; 300 ) Then GereBugChangementTaille(laFormule)
                            LaFormule.LeftMargin = iMargesFormules*100
                			LaFormule.RightMargin = iMargesFormules*100
                            on error goto 0
                       endif
                endif
            next i
            rem la ligne suivante pour regler la taille de TOUS les caractères si option choisie	
            If bChangeTaille = True Then
            	If oTailleFormule.Model.CheckBox6.State = 1 Then RegleTailledesCaracteresduTexte(LeTexteATraiter)
            Endif
            pgb.end
            oVCursor.GotoRange(oSapos,False) &apos;ajouté par Didier DP
            oVCursor.GoRight(1,False)
		
        case 3:
            compte=0
            while LesObjets.HasMoreElements
                pgb.value=clng(compte+1)
                Laformule=LesObjets.NextElement
                if Laformule.getImplementationName=&quot;SwXTextEmbeddedObject&quot; then
                    if LaFormule.embeddedObject.getImplementationName=&quot;com.sun.star.comp.math.FormulaDocument&quot; then
                        iTaille=LaFormule.Width
                        ChangeSize(LaFormule.embeddedObject,increment,relatif)
                        If bChangeTaille = True Then
                        LaFormule.EmbeddedObject.FontNameVariables = oTailleFormule.Model.ComboBox1.Text
	  					LaFormule.EmbeddedObject.FontNameNumbers = oTailleFormule.Model.ComboBox1.Text
	  					LaFormule.EmbeddedObject.FontNameText = oTailleFormule.Model.ComboBox1.Text
	 					LaFormule.EmbeddedObject.FontNameFunctions = oTailleFormule.Model.ComboBox1.Text
                        LaFormule.embeddedobject.FontVariablesIsItalic = (oTailleFormule.Model.CheckBox1.State = 1)
&apos; next line by Gisbert
                        LaFormule.embeddedobject.FontTextIsItalic = (oTailleFormule.Model.CheckBox5.State = 1)
                        LaFormule.embeddedobject.IsTextMode = (oTailleFormule.Model.CheckBox2.State = 1)
                        LaFormule.embeddedobject.FontTextIsBold = (oTailleFormule.Model.CheckBox3.State = 1)
                        LaFormule.embeddedobject.FontFunctionsIsBold = (oTailleFormule.Model.CheckBox3.State = 1)
                        LaFormule.embeddedobject.FontVariablesIsBold = (oTailleFormule.Model.CheckBox3.State = 1)
                        LaFormule.embeddedobject.FontNumbersIsBold = (oTailleFormule.Model.CheckBox3.State = 1)
                        rem incremente le nombre de caracteres traites de 1
                        NbreCaracTraite = NbreCaracTraite + 1
                        Endif
                        If bChangeTaille= True Then
                               EncadrerFormule(LaFormule,iBord)
                           Elseif bEncadre = TRUE Then
                            EncadrerFormule(LaFormule,2-LaFormule.GetPropertyValue(&quot;LeftBorder&quot;).OuterLineWidth)
                        Endif
                           LaFormule.embeddedObject.Formula=LaFormule.embeddedObject.Formula+&quot;&quot;
                        LaFormule.embeddedObject.setmodified(true)
                        If (LaFormule.Width=iTaille and LeNumeroDeVersion &lt; 300 ) Then GereBugChangementTaille(laFormule) 
                        LaFormule.LeftMargin = iMargesFormules*100
                 		LaFormule.RightMargin = iMargesFormules*100              
                    endif
                endif
            wend
            
            rem la ligne suivante pour regler la taille de TOUS les caractères si option choisie	
    		If bChangeTaille = True Then
    			If oTailleFormule.Model.CheckBox6.State = 1 Then RegleTailledesCaracteresduTexte(LeTexteATraiter)
            Endif
           pgb.end           
           oVCursor.GotoRange(oSapos,False) &apos;ajouté par Didier DP
           oVCursor.GoRight(1,False)
           
    end select
end sub


Sub EncadrerFormule(MyFormule as Object,iBord as Long) &apos;iBord = 2 pour encadrer, 0 sinon
MyFormule.SetPropertyValue(&quot;LeftBorder&quot;,Array(0,0,iBord,0))
MyFormule.SetPropertyValue(&quot;LeftBorderDistance&quot;,0)
MyFormule.SetPropertyValue(&quot;RightBorder&quot;,Array(0,0,iBord,0))
MyFormule.SetPropertyValue(&quot;RightBorderDistance&quot;,0)
MyFormule.SetPropertyValue(&quot;TopBorder&quot;,Array(0,0,iBord,0))
MyFormule.SetPropertyValue(&quot;TopBorderDistance&quot;,0)
MyFormule.SetPropertyValue(&quot;BottomBorder&quot;,Array(0,0,iBord,0))
MyFormule.SetPropertyValue(&quot;BottomBorderDistance&quot;,0)
End Sub

Function DetermineTaille (CetteFormule as Object) as Integer &apos;par Didier DP
		Dim iPosAcco, iLataille as Integer
		iLataille = CetteFormule.embeddedObject.BaseFontHeight
		If (Mid(CetteFormule.embeddedobject.formula,1,4) = &quot;size&quot; or Mid(CetteFormule.embeddedobject.formula,1,5) = &quot; size&quot;) Then
		iPosAcco = InStr(CetteFormule.embeddedobject.formula,&quot;{&quot;)
		iLataille = Cint(Mid(LaFormule.embeddedobject.formula,5,iPosAcco-1)
		Endif
		DetermineTaille = iLataille
End Function

Sub GereBugChangementTaille(oFormule as Object) &apos; par Jérome Ortais
    Dim oWCurs as Object, oBugFormule as Object, iCptErreur as Integer
        oWCurs=ThisComponent.Text.CreateTextCursor
        oWcurs.GotoEnd(False)
        If (Mid(oFormule.embeddedObject.Formula,1,5)=&quot;size &quot; or Mid(oFormule.embeddedObject.Formula,1,6)=&quot; size &quot;) Then
            oWCurs.String=oFormule.embeddedObject.Formula
            &apos;oWCurs.goLeft(Len(oFormule.embeddedObject.Formula),True)
        Else
            sFormule=&quot;size &quot;+oFormule.embeddedObject.BaseFontHeight+&quot;{&quot;+oFormule.embeddedObject.Formula+&quot;}&quot;&apos;{}
              oWCurs.String=sFormule
            oWCurs.goLeft(Len(sFormule),True)
          EndIf
        ThisComponent.getcurrentcontroller().select(oWCurs)
        &apos; Gere le probleme du executeDispatch qui se fait parfois trop rapidement
        On Error GoTo TraiteErreur
        Wait 10
        dim Array(0) as new com.sun.star.beans.PropertyValue
        oDispHelper.executeDispatch(oProvider, &quot;.uno:InsertObjectStarMath&quot;, &quot;&quot;, 0, Array()) 
              
        oBugFormule = ThisComponent.getCurrentSelection()
        oFormule.Size=oBugFormule.Size    
        oBugFormule.dispose
        oDispHelper.executeDispatch(oProvider, &quot;.uno:Escape&quot;, &quot;&quot;, 0, Array()) 
        Exit Sub
        TraiteErreur:
            If err=423 Then
                wait 50
                oDispHelper.executeDispatch(oProvider, &quot;.uno:InsertObjectStarMath&quot;, &quot;&quot;, 0, Array())                   
	            oBugFormule=ThisComponent.getCurrentSelection()
                iCptErreur=iCptErreur+50
                If iCptErreur&lt;2500 Then
                    Resume
                Else
                    oWCurs.String=&quot;&quot;
                    On Error GoTo 0
                EndIf
            Else
                oWCurs.String=&quot;&quot;
                On Error GoTo 0
            EndIf

End Sub

Sub ChangeSize(oFormule,iIncrement,bRelatif) as Boolean rem modifiée le 4 septembre 2010 par DDP
	Dim sFormule as String
	Dim iNvlTaille as Integer
	sFormule=oFormule.Formula
	If OOONumVersion &gt;= 310 Then 
		If (Mid(sFormule,1,5)=&quot;size &quot; or Mid(sFormule,1,6)=&quot; size &quot;) Then
	        iNvlTaille = IIf(bRelatif,CInt(Mid(sFormule,6,InStr(sFormule,&quot;{&quot;)-6)),0) + iIncrement
        	oFormule.Formula= Mid(sFormule,InStr(sFormule,&quot;{&quot;)+1,Len(sFormule)-InStr(sFormule,&quot;{&quot;)-1)            
        Else
       		iNvlTaille=iif(bRelatif,oFormule.BaseFontHeight,0)+iIncrement    	
        Endif        	    		
        	oFormule.BaseFontHeight = iNvlTaille
    Else
          If (Mid(sFormule,1,5)=&quot;size &quot; or Mid(sFormule,1,6)=&quot; size &quot;) Then
            iNvlTaille=IIf(bRelatif,CInt(Mid(sFormule,6,InStr(sFormule,&quot;{&quot;)-6)),0)+iIncrement
            oFormule.Formula=&quot;size &quot;+iNvlTaille+Mid(sFormule,InStr(sFormule,&quot;{&quot;))
        Else
            iNvlTaille=iif(bRelatif,oFormule.BaseFontHeight,0)+iIncrement
            oFormule.Formula=&quot;size &quot;+iNvlTaille+&quot;{&quot;+sFormule+&quot;}&quot;&apos;{}
        EndIf
    	
   Endif
End Sub


Rem cette macro regle la taille des caracteres à l&apos;identique des formules si option choisie
Sub RegleTailledesCaracteresduTexte(LeTexte as object)
	Dim oCurseur as Object	
	NbreCaracTraite = NbreCaracTraite + Len(LeTexte.String)
	oCurseur = LeTexte.CreateTextCursor
	oCurseur.gotoStart(False)
	For i=1 to NbreCaracTraite
		oCurseur.goright(0,false)
		oCurseur.goright(1,True)
		oCurseur.CharHeight = Cint(oTailleFormule.Model.ComboBox2.Text)
		If (oCurseur.CharFontName &lt;&gt; &quot;OpenSymbol&quot; and oCurseur.CharFontName &lt;&gt; &quot;Symbol&quot; and oCurseur.CharFontName &lt;&gt; sNomPoliceCursive) Then
			oCurseur.CharFontName = oTailleFormule.Model.ComboBox1.Text
		Endif 
		pgb.value = i/20	
	Next i		
End Sub


</script:module>