From ed5640d8b587fbcfed7dd7967f3de04b37a76f26 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 11:06:44 +0200 Subject: Adding upstream version 4:7.4.7. Signed-off-by: Daniel Baumann --- wizards/source/tutorials/Functions.xba | 385 +++++++++++++++++++++++ wizards/source/tutorials/RoadMap.xba | 134 ++++++++ wizards/source/tutorials/ShowInfoDialog.xba | 322 +++++++++++++++++++ wizards/source/tutorials/TutorialClose.xba | 32 ++ wizards/source/tutorials/TutorialCloseDialog.xdl | 31 ++ wizards/source/tutorials/TutorialCreator.xba | 27 ++ wizards/source/tutorials/TutorialOpen.xba | 113 +++++++ wizards/source/tutorials/TutorialOpenDialog.xdl | 38 +++ wizards/source/tutorials/TutorialsDialog.xdl | 43 +++ wizards/source/tutorials/dialog.xlb | 7 + wizards/source/tutorials/script.xlb | 10 + 11 files changed, 1142 insertions(+) create mode 100644 wizards/source/tutorials/Functions.xba create mode 100644 wizards/source/tutorials/RoadMap.xba create mode 100644 wizards/source/tutorials/ShowInfoDialog.xba create mode 100644 wizards/source/tutorials/TutorialClose.xba create mode 100644 wizards/source/tutorials/TutorialCloseDialog.xdl create mode 100644 wizards/source/tutorials/TutorialCreator.xba create mode 100644 wizards/source/tutorials/TutorialOpen.xba create mode 100644 wizards/source/tutorials/TutorialOpenDialog.xdl create mode 100644 wizards/source/tutorials/TutorialsDialog.xdl create mode 100644 wizards/source/tutorials/dialog.xlb create mode 100644 wizards/source/tutorials/script.xlb (limited to 'wizards/source/tutorials') diff --git a/wizards/source/tutorials/Functions.xba b/wizards/source/tutorials/Functions.xba new file mode 100644 index 000000000..4b422c80b --- /dev/null +++ b/wizards/source/tutorials/Functions.xba @@ -0,0 +1,385 @@ + + + +REM ***** BASIC ***** +Dim DialogVisible As Boolean +Dim TutorStep As Integer +Dim TutorLastStep As Integer +Dim myDialog As Object +Dim myTutorial As Object +Public TutorText() As String +Dim documentTitle As String +Dim exampleUse As Object +Dim properties() As Object +Dim docTYP As String +'public myWidth As Long +Dim myHeight As Long +Dim oTextField As Object +Dim stepTitle As String +Dim oOpenDialogFlag +Dim imageStatus As String + +Sub LoadTutorialDialog(exampleToUse, documentTYP) + Init() + exampleUse = exampleToUse + TutorText() = exampleUse.LoadText() + properties() = exampleUse.GetProperties() + If properties(3).Value = "True" Then + Dim localisation(0) As new com.sun.star.beans.NamedValue + localisation(0).Name = "Localisation" + localisation(0).Value = properties() + myTutorial.execute(localisation()) + Else + TutorStep = 0 + TutorLastStep = 0 + docTYP = documentTYP + InitAction() + ShowInfoMain() + DialogVisible = True + myDialog = LoadDialog("Tutorials","TutorialsDialog") + + SetTutorialDocumentPosSize() + + documentProps = ThisComponent.getDocumentProperties() + myDialog.Title = "Tutorials - " & documentProps.Title + oTextField = myDialog.GetControl("myTextField") + oTextField.setVisible(False) + + imageStatus = "MIN" + setMaxMinImage(imageStatus) + + 'myWidth = myDialog.Size.Width + myHeight = myDialog.Size.Height + + CheckForStepShowButtonStatus() + CheckForStepNextButtonStatus() + InitRoadMap() + SetVisibleTrue() + myDialog.model.myTextField.Label = stepTitle + myDialog.model.myText.Label = GetStepText()'TutorText(TutorStep) + + + Do + wait 1000 + Loop Until DialogVisible = False + If( oOpenDialogFlag = True) Then + Destroy() + TutorialOpen.TutorialOpenMain() + Else + Destroy() + End If + End If +End Sub + +Sub setMaxMinImage(param As String) + On Local Error Goto NOIMAGE + oCommandButton = myDialog.GetControl("CommandButton") + templatePath = GetPathSettings("Template",false, 0) + Dim bitmapPath As String + iPos = InStr(templatePath,"/") + If(iPos > 0) Then + If(param = "MAX") Then + bitmapPath = templatePath & "../wizard/bitmap/maximize.png" + ElseIf(param = "MIN") Then + bitmapPath = templatePath & "../wizard/bitmap/minimize.png" + End If + Else + If(param = "MAX") Then + bitmapPath = templatePath & "..\wizard\bitmap\maximize.png" + ElseIf(param = "MIN") Then + bitmapPath = templatePath & "..\wizard\bitmap\minimize.png" + End If + End If + 'printdbgInfo oCommandButton.Model + oCommandButton.Model.ImageUrl = bitmapPath + Exit Sub + NOIMAGE: +End Sub + +Sub SetTutorialDocumentPosSize() + activDesktopWindow = StarDesktop.activeFrame.ContainerWindow + If(activDesktopWindow.posSize.Height < 550) Then + activDesktopWindow.setPosSize(0,0,0,550,8) + End If + If (activDesktopWindow.posSize.Width < 750 ) Then + activDesktopWindow.setPosSize(0,0,750,0,4) + EndIf +End Sub + +Sub InitRoadMap() + RoadMapMain(Functions, myDialog) + SetControlModelPosSize(0, 0, 85, 176) + SetControlModelText("Steps") + + StepSize = Ubound(TutorText()) + Dim ItemsArray(StepSize) as String + For i = 0 To StepSize + stepcontent = TutorText(i) + iPos = InStr(stepcontent,CHR(13)) + ItemName = Left(stepcontent, iPos) + ItemsArray(i) = ItemName + Next i + InsertItemsLabels( ItemsArray()) + + For i = 1 To StepSize + SetItemEnabled( i, False) + Next i + SetItemEnabled( 0, True) +End Sub + +Sub Destroy() + 'myDialog.dispose + wait 1000 + ShowInfoDialog.DisposeIDialog() + + ' THE DOCUMENT GETS CLOSED HERE!!!!!!!! GPF + thisComponent.CurrentController.Frame.close(True) + +End Sub + +Sub Init + GlobalScope.BasicLibraries.LoadLibrary("Tools") + myTutorial = createUNOService("com.sun.star.wizards.tutorial.executer.CallTutorialFramework") + documentTitle = ThisComponent.getCurrentController.getFrame.Title +End Sub + +Sub InitStep + udProps = ThisComponent.DocumentProperties.UserDefinedProperties + If udProps.PropertySetInfo.hasPropertyByName("CurrentStep") Then + TutorStep = udProps.CurrentStep + Else + udProps.addProperty("CurrentStep", 0, TutorStep) + End If +End Sub + +Sub setStep + ThisComponent.DocumentProperties.UserDefinedProperties.CurrentStep = TutorStep +End Sub + +Sub InitAction() + SetStepTitle() + + Dim property(6) As new com.sun.star.beans.PropertyValue + property(0).Name = "DocumentTYP" + property(0).Value = docTYP + property(1).Name = "MethodName" + property(1).Value = "setDelay" + property(2).Name = "Param" + property(2).Value = 0 'key insert speed (Millis) + property(3).Name = "Param" + property(3).Value = 4 'mouse animate speed (Millis) + property(4).Name = "Param" + property(4).Value = 2000 'after mouse animate sleep (Millis) + property(5).Name = "Param" + property(5).Value = 10 'mouse scroll speed (Millis) + property(6).Name = "Param" + property(6).Value = -1 'mouse speed (step) + myTutorial.setPropertyValues(property()) +End Sub + +Sub EndDialog + oOpenDialogFlag = False + If (myDialog.model.done.Label = "Close") Then + TutorialCloseMain() + Else + DialogVisible = False + End If +End Sub + +Sub NextStep + GotoStep(TutorStep + 1) +End Sub + +Sub GotoStep(StepIndex) + If(StepIndex <= Ubound(TutorText())) Then + TutorStep = StepIndex + If TutorStep > TutorLastStep Then + TutorLastStep = TutorStep + End If + If(TutorStep = Ubound(TutorText())) Then + myDialog.model.next.enabled = False + myDialog.model.done.Label = "Done" + myDialog.model.show.Label = "Tutorials" + Else + myDialog.model.next.enabled = True + End If + SetStepTitle() + myDialog.model.myText.Label = GetStepText() + CheckForStepShowButtonStatus() + SetItemEnabled( TutorStep, True) + 'setStep() + End If +End Sub + +Function GetStepText() + Dim tempText As String + tempText = TutorText(TutorStep) + iPos = InStr(tempText,CHR(13)) + ResultString = Right(tempText, Len(tempText) - iPos - 1) + GetStepText() = ResultString +End Function + +Sub ItemChange(CurrentItemID, SelectitemID) + GotoStep(SelectitemID) +End Sub + +Sub SetDisableShowMeButton() + myDialog.model.show.enabled = False + TutorLastStep = TutorLastStep + 1 +End Sub + +Sub Minimize(aEvent) + ActionItemsTextField = myDialog.GetControl("ActionItemsLabel") + FixedLineVertikal = myDialog.GetControl("FixedLineVertikal") + + If myDialog.Size.Height = 35 Then + myDialog.setPosSize(0,0,0,myHeight,8) + oTextField.setVisible(False) + ActionItemsTextField.setVisible(True) + FixedLineVertikal.setVisible(True) + RoadMap.SetVisibleRoadMap(True) + Else + myDialog.setPosSize(0,0,0,35,8) + rmSelectedIndex = RoadMap.GetSelectedIndex() + 1 + gsTitle = GetStepTitle() + oTextField.setText(rmSelectedIndex & ". " & gsTitle) + oTextField.setVisible(True) + ActionItemsTextField.setVisible(False) + FixedLineVertikal.setVisible(False) + RoadMap.SetVisibleRoadMap(False) + End If + If(imageStatus = "MAX") Then + imageStatus = "MIN" + ElseIf(imageStatus = "MIN") Then + imageStatus = "MAX" + End If + setMaxMinImage(imageStatus) + +End Sub + +Sub SetStepTitle() + stepcontent = TutorText(TutorStep) + iPos = InStr(stepcontent,CHR(13)) + stepTitle = Left(stepcontent, iPos) + SetStepTitle() = stepTitle +End Sub + +Function GetStepTitle() + GetStepTitle() = stepTitle +End Function + +Sub CheckForStepShowButtonStatus() + If ((exampleUse.ContainsStepAction() = True And TutorStep = TutorLastStep) Or myDialog.model.show.Label = "Tutorials") Then + myDialog.model.show.enabled = True + Else + myDialog.model.show.enabled = False + End If +End Sub + +Sub CheckForStepNextButtonStatus() + If(TutorStep = Ubound(TutorText())) Then + myDialog.model.next.enabled = False + myDialog.model.done.Label = "Done" + End If +End Sub + +Sub Show(aEvent) + 'ShowInfoMain() + If( myDialog.model.show.Label = "Tutorials") Then + oOpenDialogFlag = True + DialogVisible = False + Else + SetMousePosition(aEvent) + exampleUse.Action() + End If +End Sub + +Sub SetMousePosition(aEvent) + MyPoints() = MousePoints(aEvent) + + Dim mousePosition(3) as new com.sun.star.beans.PropertyValue + mousePosition(0).Name = "DocumentTYP" + mousePosition(0).Value = docTYP + mousePosition(1).Name = "MethodName" + mousePosition(1).Value = "setMousePosition" + mousePosition(2).Name = "Param" + mousePosition(2).Value = MyPoints(0) + mousePosition(3).Name = "Param" + mousePosition(3).Value = MyPoints(1) + + myTutorial.setPropertyValues(mousePosition()) +End Sub + +Function MousePoints(aEvent) + Dim position(1) As Integer + position(0) = myDialog.getControl("show").AccessibleContext.LocationOnScreen.X + aEvent.Source.Model.PositionX + position(1) = myDialog.getControl("show").AccessibleContext.LocationOnScreen.Y + aEvent.Source.Model.PositionY + MousePoints = position() +End Function + +Function CheckPath(path() As String) + 'documentTitle = ThisComponent.getCurrentController.getFrame.Title + sTitle = path(0) + ResultString = Right(sTitle, 3) + iPos = InStr(ResultString,"#") + ResultString = Right(ResultString, Len(ResultString) - iPos) + ResultFrameString = InStr (sTitle, "{D}FRAME#") + If ResultFrameString <> 0 Then + If Not (sTitle = ("{D}FRAME#" & documentTitle & "#" & ResultString)) Then + 'path(0) = "{D}FRAME#" & documentTitle & "#" & ResultString + path(0) = "FRAME#" & documentTitle & "#" & ResultString + sTitle = path(1) + ResultString = Right(sTitle, 3) + iPos = InStr(ResultString,"#") + ResultString = Right(ResultString, Len(ResultString) - iPos) + path(1) = "ROOT_PANE#" & documentTitle & "#" & ResultString + Else + 'path(0) = "{D}FRAME#" & documentTitle & "#" & ResultString + path(0) = "FRAME#" & documentTitle & "#" & ResultString + End If + End If +End Function + +Sub SetVisibleTutorialsDialog(param) + myDialog.setVisible(param) +End Sub + +Sub SetVisibleTrue() + myDialog.setVisible(True) +End Sub + +Sub SetVisibleFalse() + myDialog.setVisible(False) +End Sub + +Sub ExitTutorial() + Dim aUrl As new com.sun.star.util.URL + oDoc = ThisComponent + urlTransformer = createUNOService("com.sun.star.util.URLTransformer") + aUrl.Complete = "slot:5621" + urlTransformer.parseStrict(aUrl) + xController = oDoc.getCurrentController() + xDispatcher = xController.queryDispatch(aUrl, "", 0) + if NOT isNull(xDispatcher) then + xDispatcher.dispatch(aUrl, DimArray()) + else + msgBox "Error! Cannot close document." + End If +End Sub + diff --git a/wizards/source/tutorials/RoadMap.xba b/wizards/source/tutorials/RoadMap.xba new file mode 100644 index 000000000..efcfc03a4 --- /dev/null +++ b/wizards/source/tutorials/RoadMap.xba @@ -0,0 +1,134 @@ + + + +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 + \ No newline at end of file diff --git a/wizards/source/tutorials/ShowInfoDialog.xba b/wizards/source/tutorials/ShowInfoDialog.xba new file mode 100644 index 000000000..e1da4b596 --- /dev/null +++ b/wizards/source/tutorials/ShowInfoDialog.xba @@ -0,0 +1,322 @@ + + + +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 + diff --git a/wizards/source/tutorials/TutorialClose.xba b/wizards/source/tutorials/TutorialClose.xba new file mode 100644 index 000000000..b4a066b89 --- /dev/null +++ b/wizards/source/tutorials/TutorialClose.xba @@ -0,0 +1,32 @@ + + + +REM ***** BASIC ***** +Dim myCloseDialog As Object + +Sub TutorialCloseMain + myCloseDialog = LoadDialog("Tutorials","TutorialCloseDialog") + myCloseDialog.Execute() +End Sub + +Sub CloseYes(aEvent) + myCloseDialog.EndExecute() + DialogVisible = False +End Sub + \ No newline at end of file diff --git a/wizards/source/tutorials/TutorialCloseDialog.xdl b/wizards/source/tutorials/TutorialCloseDialog.xdl new file mode 100644 index 000000000..a362b2a44 --- /dev/null +++ b/wizards/source/tutorials/TutorialCloseDialog.xdl @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/wizards/source/tutorials/TutorialCreator.xba b/wizards/source/tutorials/TutorialCreator.xba new file mode 100644 index 000000000..34e1276f4 --- /dev/null +++ b/wizards/source/tutorials/TutorialCreator.xba @@ -0,0 +1,27 @@ + + + +REM ***** BASIC ***** +Sub TutorialCreatorMain + GlobalScope.BasicLibraries.LoadLibrary("Tools") + myTutorial = createUNOService("com.sun.star.wizards.tutorial.executer.CallTutorialFramework") + myTutorial.trigger("StartTutorialCreator") +End Sub + + \ No newline at end of file diff --git a/wizards/source/tutorials/TutorialOpen.xba b/wizards/source/tutorials/TutorialOpen.xba new file mode 100644 index 000000000..5b6001c6c --- /dev/null +++ b/wizards/source/tutorials/TutorialOpen.xba @@ -0,0 +1,113 @@ + + + +REM ***** BASIC ***** +Dim myOpenDialog As Object +Dim oListBox As Object +Dim files As Object +Dim oUcb As Object +Dim oListener As Object + +Sub TutorialOpenMain + GlobalScope.BasicLibraries.LoadLibrary("Tools") + myOpenDialog = LoadDialog("Tutorials","TutorialOpenDialog") + init() + myOpenDialog.Execute() +End Sub + +Sub Init + On Local Error Goto NOFILE + myOpenDialog.Title = "Tutorials" + oListBox = myOpenDialog.GetControl("ListBox") + templatePath = GetPathSettings("Template",false, 0) + Dim tutorialPath As String + iPos = InStr(templatePath,"/") + if(iPos > 0) Then + tutorialPath = templatePath & "/tutorials" + Else + tutorialPath = templatePath & "\tutorials" + End If + oUcb = createUnoService("com.sun.star.ucb.SimpleFileAccess") + files = oUcb.getFolderContents(tutorialPath,true) + size = Ubound( files() ) + Dim tempFiles(size) As String + tempCount = 0 + For iCount = 0 To size + completPath = files(iCount) + oDocInfo = CreateUnoService("com.sun.star.document.DocumentProperties") + oDocInfo.Read(completPath) + sDocTitle = oDocInfo.Title + if(not isNull(sDocTitle) And len(sDocTitle) > 0) Then + oListbox.addItem(sDocTitle,0) + tempFiles(tempCount) = completPath + tempCount = tempCount + 1 + End If + Next iCount + 'printdbgInfo oListbox + size = oListbox.ItemCount - 1 + Dim tempFiles2(size) As String + For iCount = 0 To size + tempFiles2(iCount) = tempFiles(iCount) + Next iCount + files() = tempFiles2() + Exit Sub + NOFILE: + If Err <> 0 Then + Msgbox "No file found error!" & CHR(13) & "Path: ...\share\template\...\tutorials\" + myOpenDialog.model.Open.enabled = False + End If +End Sub + +Sub ItemSelected(oEvent) + On Local Error Goto NOFILE + completPath = files(Ubound(files()) - oEvent.Selected) + oTextField = myOpenDialog.GetControl("Label") 'TextField + oTextField.setText("") + Dim NoArgs() as new com.sun.star.beans.PropertyValue + oDocInfo = CreateUnoService("com.sun.star.document.DocumentProperties") + oDocInfo.Read(completPath) + sDocDescription = oDocInfo.Description + if(not isNull(sDocTitle) And len(sDocDescription) > 0) Then + oTextField.setText(sDocDescription) + Else + oTextField.setText("Not Description!!!.") + End If + Exit Sub + NOFILE: + If Err <> 0 Then + Msgbox "Open file error!" + End If +End Sub + +Sub OpenTutorial(aEvent) + completPath = files(Ubound(files()) - oListBox.getSelectedItemPos()) + Dim Args(2) as new com.sun.star.beans.PropertyValue + Args(1).Name = "MacroExecutionMode" + Args(1).Value = com.sun.star.document.MacroExecMode.ALWAYS_EXECUTE + Args(2).Name = "AsTemplate" + Args(2).Value = true + + StarDesktop.LoadComponentFromURL(completPath,"_default",0, Args()) + myOpenDialog.endExecute() +End Sub + +Sub Cancel(aEvent) + myOpenDialog.endExecute() +End Sub + \ No newline at end of file diff --git a/wizards/source/tutorials/TutorialOpenDialog.xdl b/wizards/source/tutorials/TutorialOpenDialog.xdl new file mode 100644 index 000000000..d9a6009a3 --- /dev/null +++ b/wizards/source/tutorials/TutorialOpenDialog.xdl @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/wizards/source/tutorials/TutorialsDialog.xdl b/wizards/source/tutorials/TutorialsDialog.xdl new file mode 100644 index 000000000..f8a2ee211 --- /dev/null +++ b/wizards/source/tutorials/TutorialsDialog.xdl @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/wizards/source/tutorials/dialog.xlb b/wizards/source/tutorials/dialog.xlb new file mode 100644 index 000000000..e02b20688 --- /dev/null +++ b/wizards/source/tutorials/dialog.xlb @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/wizards/source/tutorials/script.xlb b/wizards/source/tutorials/script.xlb new file mode 100644 index 000000000..30280c6b1 --- /dev/null +++ b/wizards/source/tutorials/script.xlb @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file -- cgit v1.2.3