Using LO Version: 220.127.116.11 on an iMAC with OSX 10.10.5
[Warning this is a LONG description for a short question]
I’m building a series of dialogs as a more flexible & customisable version of MSGBOX but I’m having trouble getting the graphic icons to stick in the design. Here’s my Information dialog design:
You’ll see that I’ve just added the graphic (the blue circle with the I )
if i exercise the TEST MODE ON/Off you’ll see all is as it should be like this:
If I now save the design and open the dialog with this code:
'============================================================================================ ' general purpose test harness for developing routines sub Testy call DialogMsgBox("this is a test message",mbInformation,"This is the TITLE", "Btn1 Text", 7) end Sub '============================================================================================ function DialogMsgBox(theMsg as string, dialogType as integer,theTitle as string,_ Button1Text as string, Button1Response as integer, _ optional Button2Text as string, optional Button2Response as integer, _ optional Button3Text as string, optional Button3Response as integer, _ optional DefaultButtonNo as integer) as integer dim oDialog1 as object dim oDialog1Model as object Dim NoOfButtons as integer Dim oMsg as object Dim oTitle as object dim oCMD1 as object dim oCMD2 as object dim oCMD3 as object dim oGraphic as object DialogLibraries.LoadLibrary("Standard") ' sort out dialogType select case dialogType case=mbSTOP oDialog1 = CreateUnoDialog( DialogLibraries.Standard.DialogStop) case=mbQUESTION oDialog1 = CreateUnoDialog( DialogLibraries.Standard.DialogQuestion) case=mbEXCLAMATION oDialog1 = CreateUnoDialog( DialogLibraries.Standard.DialogAlert) case=mbINFORMATION oDialog1 = CreateUnoDialog( DialogLibraries.Standard.DialogInformation) case=mbCONFIRMATION oDialog1 = CreateUnoDialog( DialogLibraries.Standard.DialogConfirmation) end select oDialog1Model = oDialog1.Model ' msgbox oDialog1Model.Dbg_Properties ' set the graphic oGraphic= oDialog1Model.Graphic msgbox oGraphic.Dbg_Properties ' msgbox oGraphic.Dbg_Methods ' get no of buttons if isMissing(Button2Text) then NoOfButtons=1 else if isMissing(Button3Text) then NoOfButtons=2 else NoOfButtons=3 endif endif ' assign DefaultButtonNo if isMissing(DefaultButtonNo) then dbno=1 else if dbno>NoOfButtons then dbno=1 else dbno=DefaultButtonNo endif endif ' assign Title oDialog1Model.Title= oDialog1Model.Title & " " & theTitle ' and the message oMsg=oDialog1Model.Msg oMsg.Text=themsg & chr(13) & chr(13) & "The Number of buttons=" & cstr(NoOfButtons) ' make button(s) visible with text oCMD1= oDialog1Model.CommandButton1 oCMD2= oDialog1Model.CommandButton2 oCMD3= oDialog1Model.CommandButton3 select case NoOfButtons case = 1 oCMD1.EnableVisible=FALSE oCMD2.EnableVisible=FALSE oCMD3.EnableVisible=TRUE oCMD3.Label=Button1Text case = 2 oCMD1.EnableVisible=TRUE oCMD2.EnableVisible=TRUE oCMD3.EnableVisible=FALSE oCMD1.Label=Button1Text oCMD2.Label=Button2Text case = 3 oCMD1.EnableVisible=TRUE oCMD2.EnableVisible=TRUE oCMD3.EnableVisible=TRUE oCMD1.Label=Button1Text oCMD2.Label=Button2Text oCMD3.Label=Button3Text end select oDialog1.execute() End function
What I get is this !?
What’s more If I go back to the design and re-open with EDIT it I see this:
Notice that the graphic is missing ?!
My 1st question is what am I doing wrong, or is this a bug?
My 2nd question is I’d like to collapse the four dialog’s into one general purpose dialog but for that I’d have to be able to make the background and the graphic dynamic i.e. assignable by the macro. How can I do that?