REM ***** BASIC ***** Dim oWnd As Object Dim oWnd2 As Object Dim oWnd3 As Object Dim oDoc as Object

Sub ShowInfoMain prop() = GetShowInfoProperties() Init(prop(0).Value, prop(1).Value, prop(2).Value, prop(3).Value, prop(4).Value, prop(5).Value, prop(6).Value, prop(7).Value, prop(8).Value) End Sub

Sub Init(tFieldText As String, windowX, windowY, windowWidth, windowHeight, tFieldX, tFieldY, tFieldWidth, tFieldHeight) toolkit = createUnoService("com.sun.star.awt.Toolkit") Dim oWndDescr As new com.sun.star.awt.WindowDescriptor Dim oBounds As new com.sun.star.awt.Rectangle oWndDescr.Type = com.sun.star.awt.WindowClass.TOP oWndDescr.WindowServiceName = "" oWndDescr.ParentIndex = 0

'officeX = StarDesktop.ActiveFrame.getContainerWindow().AccessibleContext.LocationOnScreen.X 'officeY = StarDesktop.ActiveFrame.getContainerWindow().AccessibleContext.LocationOnScreen.Y 'officeWidth = StarDesktop.ActiveFrame.getContainerWindow().getPosSize().Width 'officeHeight = StarDesktop.ActiveFrame.getContainerWindow().getPosSize().Height officeWidth = thisComponent.CurrentController.Frame.getContainerWindow().getPosSize().Width officeHeight = thisComponent.CurrentController.Frame.getContainerWindow().getPosSize().Height

'dialogWidth = myTutoShowDialog.getPosSize().Width 'dialogHeight = myTutoShowDialog.getPosSize().Height X = officeWidth - windowWidth - windowX Y = officeHeight - windowHeight - windowY

oBounds.X = X : oBounds.Y = Y oBounds.Width = windowWidth : oBounds.Height = windowHeight oWndDescr.Bounds = oBounds oWndDescr.Parent = thisComponent.CurrentController.Frame.ContainerWindow with com.sun.star.awt.WindowAttribute oWndDescr.WindowAttributes = .CLOSEABLE AND .MOVEABLE AND .SIZEABLE AND .BORDER AND .SHOW end with

oWnd = toolkit.createWindow(oWndDescr)

Dim oWndDescr3 As new com.sun.star.awt.WindowDescriptor Dim oBounds3 As new com.sun.star.awt.Rectangle oWndDescr3.Type = com.sun.star.awt.WindowClass.TOP oWndDescr3.WindowServiceName = "fixedimage" '"fixedtext" oWndDescr3.ParentIndex = 0 oBounds3.X = 0 : oBounds3.Y = 0 oBounds3.Width = tFieldWidth : oBounds3.Height = tFieldHeight oWndDescr3.Bounds = oBounds3 oWndDescr3.Parent = oWnd with com.sun.star.awt.WindowAttribute oWndDescr3.WindowAttributes = .CLOSEABLE AND .MOVEABLE AND .SIZEABLE AND .BORDER AND .SHOW end with

oWnd3= toolkit.createWindow(oWndDescr3) 'oWnd2.Text = tFieldText 'printdbgInfo(oWnd3) setImage(oWnd3) 'oWnd3.Background = 16777215 ' oWnd2.SetBackGround(16776960) oWnd.SetBackGround(16776960) ' oWnd.FontDescriptors(0).Name = "Albany" ' oWnd.FontDescriptors(0).StyleName = "BOLD"

Dim oWndDescr2 As new com.sun.star.awt.WindowDescriptor Dim oBounds2 As new com.sun.star.awt.Rectangle oWndDescr2.Type = com.sun.star.awt.WindowClass.TOP oWndDescr2.WindowServiceName = "fixedtext" oWndDescr2.ParentIndex = 0 oBounds2.X = tFieldX : oBounds2.Y = tFieldY oBounds2.Width = tFieldWidth : oBounds2.Height = tFieldHeight oWndDescr2.Bounds = oBounds2 oWndDescr2.Parent = oWnd3 with com.sun.star.awt.WindowAttribute oWndDescr2.WindowAttributes = .CLOSEABLE AND .MOVEABLE AND .SIZEABLE AND .BORDER AND .SHOW end with

oWnd2= toolkit.createWindow(oWndDescr2) oWnd2.Text = tFieldText oWnd2.Background = 268435455 'printdbgInfo(oWnd2)

'printdbgInfo oWnd.getPosSize()

End Sub

Function GetShowInfoProperties() stepText = GetStepTitle() Dim Properties(8) As new com.sun.star.beans.NamedValue Properties(0).Name = "ShowInfoDialogText" Properties(0).Value = stepText & "Press [Esc] to abort." Properties(1).Name = "WindowX" Properties(1).Value = 20 Properties(2).Name = "WindowY" Properties(2).Value = 40 Properties(3).Name = "WindowWidth" Properties(3).Value = 190 Properties(4).Name = "WindowHeight" Properties(4).Value = 50 Properties(5).Name = "TFieldX" Properties(5).Value = 7 Properties(6).Name = "TFieldY" Properties(6).Value = 8 Properties(7).Name = "TFieldWidth" Properties(7).Value = 190 Properties(8).Name = "TFieldHeight" Properties(8).Value = 50 GetShowInfoProperties = Properties() End Function

Sub setShowInfoText() stepText = GetStepTitle() oWnd2.Text = stepText & "Press [Esc] to abort." End Sub

Sub ShowON() setShowInfoText() oWnd.setVisible(True) oWnd3.setVisible(True) oWnd2.setVisible(True) End Sub

Sub ShowOFF() 'On Local Error Goto NOPROPERTYSETINFO: oWnd.setVisible(False) oWnd2.setVisible(False) oWnd3.setVisible(False) 'oDoc.dispose() Exit Sub 'NOPROPERTYSETINFO: End Sub

Sub DisposeIDialog() 'On Local Error Goto NOPROPERTYSETINFO: oWnd3.dispose oWnd2.dispose oWnd.dispose oDoc.dispose() Exit Sub 'NOPROPERTYSETINFO: End Sub

sub setImage(whatever as Object)

templatePath = GetPathSettings("Template",false, 0) Dim bitmapPath As String iPos = InStr(templatePath,"/") if(iPos > 0) Then bitmapPath = templatePath & "../wizard/bitmap/tutorial_background.gif" Else bitmapPath = templatePath & "..\wizard\bitmap\tutorial_background.gif" End If

dim props(0) as new com.sun.star.beans.PropertyValue props(0).Name = "Hidden" props(0).Value = true oDoc = StarDesktop.loadComponentFromUrl("private:factory/swriter","_blank",0,props()) oShape = addControlToDefaultForm("ImageButton", 1000, 1000, 2000, 1000) imgControl = oShape.getControl() 'imgControl.ImageUrl="file:///D:/Program%20Files/src680_m11_qwizards1_49_TEST/share/gallery/tutoItem.gif" imgControl.ImageUrl = bitmapPath imgControl.addConsumer(whatever) imgControl.startProduction() end sub

Function createControlShape(cKind As String) As Object

Dim oControlShape As Object Dim oControl As Object

oControlShape = oDoc.createInstance("com.sun.star.drawing.ControlShape") oControl = oDoc.createInstance("com.sun.star.form.component." & cKind) oControl.setPropertyValue("DefaultControl", "com.sun.star.form.control." & cKind) oControlShape.setControl(oControl)

createControlShape() = oControlShape

End Function

Function createControlShapeWithDefaultControl(cKind As String) As Object

Dim oControlShape As Object Dim oControl As Object

oControlShape = oDoc.createInstance("com.sun.star.drawing.ControlShape") oControl = oDoc.createInstance("com.sun.star.form.component." & cKind) oControlShape.setControl(oControl)

createControlShapeWithDefaultControl() = oControlShape

End Function

Function createUNOControlShape(cKind As String, defControl As String) As Object

Dim oControlShape As Object Dim oControl As Object

oControlShape = oDoc.createInstance("com.sun.star.drawing.ControlShape") oControl = oDoc.createInstance("com.sun.star.form.component." & cKind) oControl.setPropertyValue("DefaultControl", "com.sun.star.awt." & defControl) oControlShape.setControl(oControl)

createUNOControlShape() = oControlShape

End Function

Function addShape(oShape As Object) As Boolean

Dim vSize As New com.sun.star.awt.Size Dim oDrawPage As Object Dim oForms As Object Dim oForm As Object

oDrawPage = oDoc.getDrawPage() oForms = oDrawPage.getForms()

if oForms.Count = 0 then oForm = oDoc.createInstance("com.sun.star.form.component.Form") oForms.insertByIndex(0, oForm) end if

vSize.Height = 2000 : vSize.Width = 2000 oShape.Size = vSize oDrawPage.add(oShape)

addShape() = true

End Function

sub addControl(cKind as String)

Dim oDrawPage As Object Dim oForm As Object, oForms As Object Dim oControl As Object, oControlShape As Object Dim aSz As Variant Dim oText As Object

oDrawPage = oDoc.DrawPage oControlShape = oDoc.createInstance("com.sun.star.drawing.ControlShape") oControl = oDoc.createInstance("com.sun.star.form.component." + cKind) oForm = oDoc.createInstance("com.sun.star.form.component.Form") oforms = oDrawPage.Forms if oforms.count = 0 then oforms.insertbyindex(0,oForm) end if oControlShape.Control = oControl oDrawPage.add(oControlShape)

End sub

Function addControlToDefaultForm(cKind as String, x As Integer, y As Integer, width As Integer, height As Integer) As Object

Dim oDrawPage As Object Dim oControl As Object, oControlShape As Object Dim pos As New com.sun.star.awt.Point Dim size As New com.sun.star.awt.Size

pos.X = x pos.Y = y size.Width = width size.Height = height

oDrawPage = oDoc.DrawPage oControlShape = oDoc.createInstance("com.sun.star.drawing.ControlShape") oControl = oDoc.createInstance("com.sun.star.form.component." + cKind) oControlShape.Control = oControl oControlShape.Position = pos oControlShape.Size = size oDrawPage.add(oControlShape)

addControlToDefaultForm() = oControlShape

End Function

Function addShapeToDrawDoc(oPage as Object, nPosX, nPosY as Integer, oType As String) As Object Dim aPoint As New com.sun.star.awt.Point Dim aSize As New com.sun.star.awt.Size Dim oShape As Object Dim servNames As Variant

aPoint.x = nPosX aPoint.y = nPosY aSize.Width = 2000 aSize.Height = 1000 oShape = oDoc.createInstance("com.sun.star.drawing."+oType+"Shape") oShape.Size = aSize oShape.Position = aPoint

if oShape.getPropertySetInfo().hasPropertyByName("FillColor") then oShape.FillColor = RGB(128, 255, 0) End If

oPage.add(oShape)

addShapeToDrawDoc() = oShape End Function