REM ***** BASIC ***** Dim oControlModel Dim oDialogModel Dim CurrentItem Dim bLongString Dim oControl Dim oEvent Dim oUseDialog As Object Dim oModulName As Object

Sub RoadMapMain(ModulNameforItemChange, dialogtoUse) GlobalScope.BasicLibraries.LoadLibrary("Tools") oUseDialog = dialogtoUse oModulName = ModulNameforItemChange oDialogModel = oUseDialog.Model oControlModel = oUseDialog.Model.CreateInstance("com.sun.star.awt.UnoControlRoadmapModel")

oDialogModel.insertByName("RoadMap", oControlModel) oControl = oUseDialog.getControl("RoadMap") oEvent = createUnoListener( "CallBack_", "com.sun.star.awt.XItemListener" ) oControl.addItemListener(oEvent) oControlModel.CurrentItemID = 0 oControlModel.Complete = True oControlModel.Activated = True End Sub

Sub SetVisibleRoadMap(param) oControl.SetVisible(param) End Sub

Sub SetDialogModelSize(Width, Height) oDialogModel.Width = Width oDialogModel.Height = Height End Sub

Sub SetControlModelPosSize(X, Y, Width, Height) oControlModel.PositionX = X oControlModel.PositionY = Y oControlModel.Width = Width oControlModel.Height = Height End Sub

Sub SetControlModelText( ModelText As String) oControlModel.Text = ModelText End Sub

Sub InsertItemsLabels( ItemLabelsArray() As String) For i = 0 To Ubound(ItemLabelsArray()) oRoadmapItem = oControlModel.createInstance() oRoadmapItem.Label = ItemLabelsArray(i) oRoadmapItem.ID = i oControlModel.insertbyIndex(i, oRoadmapItem) Next i End Sub

Sub SetItemEnabled( ItemIndex, param) oControlModel.getByIndex(ItemIndex).Enabled = param oControlModel.CurrentItemID = ItemIndex End Sub

Sub AddImagetoControlModel( Url As String) oControlModel.ImageUrl = ConvertToUrl(Url) End Sub

Function GetSelectedIndex() GetSelectedIndex() = oControlModel.CurrentItemID End Function

Function GetControlModel() GetControlModel = oControlModel End Function

Function GetDialogModel() GetDialogModel = oDialogModel End Function

Sub Callback_itemStateChanged(aEvent) oModulName.ItemChange(oControlModel.CurrentItemID, aEvent.itemID) End Sub

Sub SetComplete(param) oControlModel.Complete = param End Sub

Sub SetActivated(param) oControlModel.Activated = param End Sub

Sub RemoveItem(ItemIndex) If ItemIndex > -1 Then oControlModel.removeByIndex(ItemIndex) End If End Sub

Sub InsertItem(ItemLabel As String) oRoadmapItem = oControlModel.createInstance() oRoadmapItem.Label = ItemLabel oControlModel.insertbyIndex(oControlModel.CurrentItemID, oRoadmapItem) End Sub

Sub ReplaceItem(ItemLabel As String) oRoadmapItem = oControlModel.createInstance() oRoadmapItem.Label = ItemLabel oControlModel.replacebyIndex(oControlModel.CurrentItemID, oRoadmapItem) End Sub

Sub Callback_disposing(aEvent) End Sub

Sub Property_propertyChange(aEvent) End Sub

Sub Property_disposing(aEvent) End Sub