diff options
author | Michael Stahl <mstahl@redhat.com> | 2012-01-28 20:52:45 +0100 |
---|---|---|
committer | Michael Stahl <mstahl@redhat.com> | 2012-01-28 20:52:45 +0100 |
commit | 2e626373db2412ac22e8c5c27a60d11cd29e875b (patch) | |
tree | 9e9f67205cd5b72f1031721273e1534a3a1e5b0f /wizards/source/tools/Listbox.xba | |
parent | f7ee7bbd5174b084f018c2ec94d8c70c98ee04da (diff) |
replace obsolete "master" branch with README that points at new repoHEADmaster-deletedmaster
Diffstat (limited to 'wizards/source/tools/Listbox.xba')
-rw-r--r-- | wizards/source/tools/Listbox.xba | 353 |
1 files changed, 0 insertions, 353 deletions
diff --git a/wizards/source/tools/Listbox.xba b/wizards/source/tools/Listbox.xba deleted file mode 100644 index 01e62e7d6..000000000 --- a/wizards/source/tools/Listbox.xba +++ /dev/null @@ -1,353 +0,0 @@ -<?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="Listbox" script:language="StarBasic">Option Explicit -Dim OriginalList() -Dim oDialogModel as Object - - -Sub MergeList(SourceListBox() as Object, SecondList() as String) -Dim i as Integer -Dim MaxIndex as Integer - MaxIndex = Ubound(SecondList()) - OriginalList() = AddListToList(OriginalList(), SecondList()) - For i = 0 To MaxIndex - SourceListbox = AddSingleItemToListbox(SourceListbox, SecondList(i)) - Next i - Call FormSetMoveRights() -End Sub - - -Sub RemoveListItems(SourceListbox as Object, TargetListbox as Object, RemoveList() as String) -Dim i as Integer -Dim s as Integer -Dim MaxIndex as Integer -Dim CopyList() - MaxIndex = Ubound(RemoveList()) - For i = 0 To MaxIndex - RemoveListboxItemByName(SourceListbox, RemoveList(i)) - RemoveListboxItemByName(TargetListbox, RemoveList(i)) - Next i - CopyList() = OriginalList() - s = 0 - MaxIndex = Ubound(CopyList()) - For i = 0 To MaxIndex - If IndexInArray(CopyList(i),RemoveList())= -1 Then - OriginalList(s) = CopyList(i) - s = s + 1 - End If - Next i - ReDim Preserve OriginalList(s-1) - Call FormSetMoveRights() -End Sub - - -' Note Boolean Parameter -Sub InitializeListboxProcedures(oModel as Object, SourceListbox as Object, TargetListbox as Object) -Dim EmptyList() - Set oDialogModel = oModel - OriginalList()= SourceListbox.StringItemList() - TargetListbox.StringItemList() = EmptyList() -End Sub - - -Sub CopyListboxItems(SourceListbox as Object, TargetListbox As Object) -Dim NullArray() - TargetListbox.StringItemList() = OriginalList() - SourceListbox.StringItemList() = NullArray() -End Sub - - -Sub FormMoveSelected() - Call MoveSelectedListBox(oDialogModel.lstFields, oDialogModel.lstSelFields) - Call FormSetMoveRights() - oDialogModel.lstSelFields.Tag = True -End Sub - - -Sub FormMoveAll() - Call CopyListboxItems(oDialogModel.lstFields, oDialogModel.lstSelFields) - Call FormSetMoveRights() - oDialogModel.lstSelFields.Tag = True -End Sub - - -Sub FormRemoveSelected() - Call MoveOrderedSelectedListbox(oDialogModel.lstFields, oDialogModel.lstSelFields, False) - Call FormSetMoveRights() - oDialogModel.lstSelFields.Tag = True -End Sub - - -Sub FormRemoveAll() - Call MoveOrderedSelectedListbox(oDialogModel.lstFields, oDialogModel.lstSelFields, True) - Call FormSetMoveRights() - oDialogModel.lstSelFields.Tag = 1 -End Sub - - -Sub MoveSelectedListBox(SourceListbox as Object, TargetListbox as Object) -Dim MaxCurTarget as Integer -Dim MaxSourceSelected as Integer -Dim n as Integer -Dim m as Integer -Dim CurIndex -Dim iOldTargetSelect as Integer -Dim iOldSourceSelect as Integer - MaxCurTarget = Ubound(TargetListbox.StringItemList()) - MaxSourceSelected = Ubound(SourceListbox.SelectedItems()) - Dim TargetList(MaxCurTarget+MaxSourceSelected+1) - If MaxSourceSelected > -1 Then - iOldSourceSelect = SourceListbox.SelectedItems(0) - If Ubound(TargetListbox.SelectedItems()) > -1 Then - iOldTargetSelect = TargetListbox.SelectedItems(0) - Else - iOldTargetSelect = -1 - End If - For n = 0 To MaxCurTarget - TargetList(n) = TargetListbox.StringItemList(n) - Next n - For m = 0 To MaxSourceSelected - CurIndex = SourceListbox.SelectedItems(m) - TargetList(n) = SourceListbox.StringItemList(CurIndex) - n = n + 1 - Next m - TargetListBox.StringItemList() = TargetList() - SourceListbox.StringItemList() = RemoveSelected (SourceListbox) - SetNewSelection(SourceListbox, iOldSourceSelect) - SetNewSelection(TargetListbox, iOldTargetSelect) - End If -End Sub - - - -Sub MoveOrderedSelectedListbox(lstSource as Object, lstTarget as Object, bMoveAll as Boolean) -Dim NullArray() -Dim MaxSelected as Integer -Dim MaxSourceIndex as Integer -Dim MaxOriginalIndex as Integer -Dim MaxNewIndex as Integer -Dim n as Integer -Dim m as Integer -Dim CurIndex as Integer -Dim SearchString as String -Dim SourceList() as String -Dim iOldTargetSelect as Integer -Dim iOldSourceSelect as Integer - If bMoveAll Then - lstSource.StringItemList() = OriginalList() - lstTarget.StringItemList() = NullArray() - Else - MaxOriginalIndex = Ubound(OriginalList()) - MaxSelected = Ubound(lstTarget.SelectedItems()) - iOldTargetSelect = lstTarget.SelectedItems(0) - If Ubound(lstSource.SelectedItems()) > -1 Then - iOldSourceSelect = lstSource.SelectedItems(0) - End If - Dim SelList(MaxSelected) - For n = 0 To MaxSelected - CurIndex = lstTarget.SelectedItems(n) - SelList(n) = lstTarget.StringItemList(CurIndex) - Next n - SourceList() = lstSource.StringItemList() - MaxSourceIndex = Ubound(lstSource.StringItemList()) - MaxNewIndex = MaxSelected + MaxSourceIndex + 1 - Dim NewSourceList(MaxNewIndex) - m = 0 - For n = 0 To MaxOriginalIndex - SearchString = OriginalList(n) - If IndexinArray(SearchString, SelList()) <> -1 Then - NewSourceList(m) = SearchString - m = m + 1 - ElseIf IndexinArray(SearchString, SourceList()) <> -1 Then - NewSourceList(m) = SearchString - m = m + 1 - End If - Next n - lstSource.StringItemList() = NewSourceList() - lstTarget.StringItemList() = RemoveSelected(lstTarget) - End If - SetNewSelection(lstSource, iOldSourceSelect) - SetNewSelection(lstTarget, iOldTargetSelect) - -End Sub - - -Function RemoveSelected(oListbox as Object) -Dim MaxIndex as Integer -Dim MaxSelected as Integer -Dim n as Integer -Dim m as Integer -Dim CurIndex as Integer -Dim CurItem as String -Dim ResultArray() - MaxIndex = Ubound(oListbox.StringItemList()) - MaxSelected = Ubound(oListbox.SelectedItems()) - Dim LocItemList(MaxIndex) - LocItemList() = oListbox.StringItemList() - If MaxSelected > -1 Then - For n = 0 To MaxSelected - CurIndex = oListbox.SelectedItems(n) - LocItemList(CurIndex) = "" - Next n - If MaxIndex > 0 Then - ReDim ResultArray(MaxIndex - MaxSelected - 1) - m = 0 - For n = 0 To MaxIndex - CurItem = LocItemList(n) - If CurItem <> "" Then - ResultArray(m) = CurItem - m = m + 1 - End If - Next n - End If - RemoveSelected = ResultArray() - Else - RemoveSelected = oListbox.StringItemList() - End If -End Function - - -Sub SetNewSelection(oListBox as Object, iLastSelection as Integer) -Dim MaxIndex as Integer -Dim SelIndex as Integer -Dim SelList(0) as Integer - MaxIndex = Ubound(oListBox.StringItemList()) - If MaxIndex > -1 AND iLastSelection > -1 Then - If iLastSelection > MaxIndex Then - Selindex = MaxIndex - Else - SelIndex = iLastSelection - End If - Sellist(0) = SelIndex - oListBox.SelectedItems() = SelList() - End If -End Sub - - -Sub ToggleListboxControls(oDialogModel as Object, bDoEnable as Boolean) - With oDialogModel - .lblFields.Enabled = bDoEnable - .lblSelFields.Enabled = bDoEnable -' .lstTables.Enabled = bDoEnable - .lstFields.Enabled = bDoEnable - .lstSelFields.Enabled = bDoEnable - .cmdRemoveAll.Enabled = bDoEnable - .cmdRemoveSelected.Enabled = bDoEnable - .cmdMoveAll.Enabled = bDoEnable - .cmdMoveSelected.Enabled = bDoEnable - End With - If bDoEnable Then - FormSetMoveRights() - End If -End Sub - - -' Enable or disable the buttons used for moving the available -' fields between the two list boxes. -Sub FormSetMoveRights() -Dim bIsFieldSelected as Boolean -Dim bSelectSelected as Boolean -Dim FieldCount as Integer -Dim SelectCount as Integer - bIsFieldSelected = Ubound(oDialogModel.lstFields.SelectedItems()) <> -1 - FieldCount = Ubound(oDialogModel.lstFields.StringItemList()) + 1 - bSelectSelected = Ubound(oDialogModel.lstSelFields.SelectedItems()) > -1 - SelectCount = Ubound(oDialogModel.lstSelFields.StringItemList()) + 1 - oDialogModel.cmdRemoveAll.Enabled = SelectCount>=1 - oDialogModel.cmdRemoveSelected.Enabled = bSelectSelected - oDialogModel.cmdMoveAll.Enabled = FieldCount >=1 - oDialogModel.cmdMoveSelected.Enabled = bIsFieldSelected - oDialogModel.cmdGoOn.Enabled = SelectCount>=1 - ' This flag is set to '1' when the lstSelFields has been modified -End Sub - - -Function AddSingleItemToListbox(ByVal oListbox as Object, ListItem as String, Optional iSelIndex) as Object -Dim MaxIndex as Integer -Dim i as Integer - - MaxIndex = Ubound(oListbox.StringItemList()) -Dim LocList(MaxIndex + 1) -' Todo: This goes faster with the Redim LocList(MaxIndex + 1) Preserve function - For i = 0 To MaxIndex - LocList(i) = oListbox.StringItemList(i) - Next i - LocList(MaxIndex + 1) = ListItem - oListbox.StringItemList() = LocList() - If Not IsMissing(iSelIndex) Then - SelectListboxItem(oListbox, iSelIndex) - End If - AddSingleItemToListbox() = oListbox -End Function - - -Sub EmptyListbox(oListbox as Object) -Dim NullList() as String - oListbox.StringItemList() = NullList() -End Sub - - -Sub SelectListboxItem(oListbox as Object, iSelIndex as Integer) -Dim LocSelList(0) as Integer - If iSelIndex <> -1 Then - LocSelList(0) = iSelIndex - oListbox.SelectedItems() = LocSelList() - End If -End Sub - - -Function GetSelectedListboxItems(oListbox as Object) -Dim SelList(Ubound(oListBox.SelectedItems())) as String -Dim i as Integer -Dim CurIndex as Integer - For i = 0 To Ubound(oListbox.SelectedItems()) - CurIndex = oListbox.SelectedItems(i) - SelList(i) = oListbox.StringItemList(CurIndex) - Next i - GetSelectedListboxItems() = SelList() -End Function - - -' Note: When using this Sub it must be ensured that the -' 'RemoveItem' appears only only once in the Listbox -Sub RemoveListboxItemByName(oListbox as Object, RemoveItem as String) -Dim OldList() as String -Dim NullList() as String -Dim i as Integer -Dim a as Integer -Dim MaxIndex as Integer - OldList = oListbox.StringItemList() - MaxIndex = Ubound(OldList()) - If IndexInArray(RemoveItem, OldList()) <> -1 Then - If MaxIndex > 0 Then - a = 0 - Dim NewList(MaxIndex -1) - For i = 0 To MaxIndex - If RemoveItem <> OldList(i) Then - NewList(a) = OldList(i) - a = a + 1 - End If - Next i - oListbox.StringItemList() = NewList() - Else - oListBox.StringItemList() = NullList() - End If - End If -End Sub - - -Function GetItemPos(oListBox as Object, sItem as String) -Dim ItemList() -Dim MaxIndex as Integer -Dim i as Integer - ItemList() = oListBox.StringItemList() - MaxIndex = Ubound(ItemList()) - For i = 0 To MaxIndex - If sItem = ItemList(i) Then - GetItemPos() = i - Exit Function - End If - Next i - GetItemPos() = -1 -End Function -</script:module>
\ No newline at end of file |