Re: Displaying Multiple Dialogs from BASIC

Fernand Vanrie <[email protected]> Thu, 16 Jun 2011 11:28:33 +0200
Newsgroups gmane.comp.openoffice.devel.api
Message-ID <[email protected]>
Hal ,

when using a Listner the Listener subroutine is called with a "EventObject"
the EventObject.source  is the ButtonControl
the EventObject.source.context is the DialogControl



oDialogControl = oEvent.source.context
> On Jun 16, 2011, at 4:59 AM, Fernand Vanrie wrote:
>
>> On 16/06/2011 10:20, Hal Vaughan wrote:
>>> This leads to a couple other questions:
>>>
>>> 1) On the CloseDialog() subroutine, if I want to execute it from a button in the dialog, how can I pass the dialog itself to the routine?
>> you can add a listener to the button (using code) or manualy using the GUI to place  a  "event" on the button  who call a macro subroutine
> But when I do that, and the listener calls CloseDialog(), how do I make sure that particular Dialog object is available to the CloseDialog() subroutine?  I tried it as you have it written and at the dialog.setvisible(false) line I got an error because the object was not defined.
>
>
>
> Hal
>
>>> 2) Is there any way to run a macro when the "X" on the title bar of the dialog is clicked?
>> no,  you can add a listener on closing the dialog or using the the "stetvisible" who avoid the functioning off the X  and you can add a  "cancelbuton" who call a sub who close the dialog and do someting more...
>>> Thanks!
>>>
>>>
>>> Hal
>>>
>>>
>>> On Jun 16, 2011, at 3:30 AM, Fernand Vanrie wrote:
>>>
>>>> Hal ,
>>>>
>>>> Y ou can set a Dialogcontrol visible or not , but we need a timeloop to keep it visible
>>>>
>>>> i use 2 sub's for open and closing
>>>>
>>>> Sub Opendialog
>>>> bEnd = false
>>>> oDialogcontrol.setvisible(true)
>>>> Do
>>>> Wait 100  ' keep computer running (should use "wait for key event" if existed)
>>>> Loop while not bEnd
>>>> end sub
>>>>
>>>> sub CloseDialog(dialog as object)
>>>>   dialog.setvisible(false)
>>>>   Bend = true
>>>> end sub
>>>>
>>>> Hop it Helps
>>>>> I've mentioned the sticky-note project I'm working on yesterday in two emails.
>>>>>
>>>>> Now I'm running into a problem: I'd like to display a number of sticky-notes, but to display any kind of dialog in BASIC, I need to do something like this:
>>>>>
>>>>> 	oSticky = createUnoDialog(DialogLibraries.HalLib.StickyNote)
>>>>> 	oSticky.Execute()
>>>>>
>>>>> And the program will stop until I close the dialog, either by the close button, a cancel, or OK, or another button.
>>>>>
>>>>> That means the only way to have multiple dialogs open is to open one and from there, open the next, and then open the next and so on.
>>>>>
>>>>> Is there some way, from BASIC, to display a dialog and leave it open without it stopping a script?
>>>>>
>>>>>
>>>>> Thank you!
>>>>>
>>>>>
>>>>>
>>>>> Hal--
>>>>> -----------------------------------------------------------------
>>>>> To unsubscribe send email to [email protected]
>>>>> For additional commands send email to [email protected]
>>>>> with Subject: help
>>>> -- 
>>>> -----------------------------------------------------------------
>>>> To unsubscribe send email to [email protected]
>>>> For additional commands send email to [email protected]
>>>> with Subject: help
>>>>
>> -- 
>> -----------------------------------------------------------------
>> To unsubscribe send email to [email protected]
>> For additional commands send email to [email protected]
>> with Subject: help
>>

-- 
-----------------------------------------------------------------
To unsubscribe send email to [email protected]
For additional commands send email to [email protected]
with Subject: help