/usr/lib/libreoffice/share/extensions/DmathsAddon/OOoTep/Combobox.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 | <?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="Combobox" script:language="StarBasic">'OOoGdmath
'Copyright (C) 2005-2006 Gilles Daurat
'This program is free software; you can redistribute it and/or
'modify it under the terms of the GNU General Public License
'as published by the Free Software Foundation; either version 2
'of the License, or (at your option) any later version.
'This program is distributed in the hope that it will be useful,
'but WITHOUT ANY WARRANTY; without even the implied warranty of
'MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
'GNU General Public License for more details.
'You should have received a copy of the GNU General Public License
'along with this program; if not, write to the Free Software
'Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Option Explicit
Sub Main
End Sub
Sub Add(oDialog as Object, Nom as string, Item as string, Optional pos as integer)
if IsMissing(pos) then pos=ListCount(oDialog, Nom)
oDialog.GetControl(Nom).AddItem(Item, pos)
End sub
Sub SetListIndex(oDialog as Object, Nom as string, pos as integer)
Dim Item as string
if left(Nom,4)="Comb" then
Item=GetList(oDialog, Nom, pos)
oDialog.GetControl(Nom).SetText(Item)
else
oDialog.GetControl(Nom).SelectItemPos(pos, True)
end if
End Sub
Function GetListIndex(oDialog as Object, Nom as string) as Integer
dim i,j
if left(Nom,4)="Comb" then
for i=0 to ListCount(oDialog, Nom)-1
if oDialog.GetControl(Nom).Text = GetList(oDialog, Nom, i) then j=i
next i
else
j=oDialog.GetControl(Nom).SelectedItemPos()
end if
GetListIndex=j
End Function
Sub SetList(oDialog as Object, Nom as string, Item as string)
RemplaceItem(oDialog, Nom, GetListIndex(oDialog, Nom), Item)
End Sub
Function GetList(oDialog as Object, Nom as string, pos as integer) as String
dim s as string
s=""
if pos<>-1 then s=oDialog.GetControl(Nom).GetItem(pos)
GetList()=s
End Function
Sub SelectedItem(oDialog as Object, Nom as string, Item as string)
oDialog.GetControl(Nom).SelectedItem(Item, True)
End Sub
Sub SupprimeItem(oDialog as Object, Nom as String, pos as integer)
if pos<>-1 then oDialog.GetControl(Nom).RemoveItems(pos,1)
End Sub
Sub RemplaceItem(oDialog as Object, Nom as string, pos as integer, Item as String)
if pos<>-1 then
SupprimeItem(oDialog, Nom,pos)
Add(oDialog, Nom, Item, pos)
end if
End Sub
Function ListCount(oDialog as Object, Nom as string) as integer
ListCount()=oDialog.GetControl(Nom).GetItemCount()
End Function
Sub Clear(oDialog as Object, Nom as string)
oDialog.GetControl(Nom).RemoveItems(0,ListCount(oDialog, Nom))
End Sub
</script:module>
|