Use show(0, 0, 0, 0) to create a full screen interaction dialog. Not 
showPopup.

On Sunday, January 3, 2021 at 12:41:05 AM UTC+2 [email protected] wrote:

> In the AnimatedDialog class that I shared resize should take pixels, but 
> note that it's the margins, not the dimension
>
> On Sat, 2 Jan 2021, 15:53 'P5music' via CodenameOne Discussions, <
> [email protected]> wrote:
>
>> Thanks
>> I tried to use the resize method as it seems to be useful in my case. 
>>
>> backgroundInteractionDialog.resize(0,h,0,w); //w=2048 h=1534
>> makes it disappear completely (w,h are the screen dimensions).
>>
>> instead
>> backgroundInteractionDialog.resize(0,100,0,100);
>> makes the backgroundInteractionDialog almost the size of the screen.
>> It seems that the values are not in pixels (?).
>>
>> Regards
>> Il giorno sabato 2 gennaio 2021 alle 16:07:20 UTC+1 [email protected] 
>> ha scritto:
>>
>>> Hi P5,
>>>
>>> I took a similar path as yours some time ago. Instead of extending 
>>> InteractionDialog, I created a separate class with similar functionality 
>>> and tweaked part of its code. I recall that extending it wasn't working.
>>>
>>> I am sending you my version of it, perhaps you will find it useful.. 
>>> Sample usage:
>>>
>>> Form f = getCurrentForm();
>>> AnimatedDialog newDlg = new AnimatedDialog();
>>> newDlg.setLayout(new BorderLayout());
>>> Label titleLable = new Label("some title");
>>>         titleLable.getAllStyles().setAlignment(Component.CENTER);
>>>         Container myTitle = new Container(new BorderLayout());
>>>         Border lineBorder = Border.createLineBorder(2, 0x33b5e5);
>>>         Border emptyBorder = Border.createEmpty();
>>>         Border newBorder = Border.createCompoundBorder(emptyBorder, 
>>> lineBorder, emptyBorder, emptyBorder);
>>>         myTitle.getAllStyles().setBorder(newBorder);
>>>         myTitle.add(BorderLayout.CENTER, titleLable);
>>>         newDlg.add(BorderLayout.NORTH, myTitle);
>>> Button okBtn = new Button("OK");
>>>         okBtn.getUnselectedStyle().setAlignment(4);
>>>         okBtn.addActionListener(e -> {
>>>             newDlg.disposeToTheTop();
>>>         });
>>>         FlowLayout centerLayout = new FlowLayout();
>>>         centerLayout.setValign(CENTER);
>>>         Container boxCenter = new Container(centerLayout);
>>>         SpanLabel msgLbl = new SpanLabel("some msg");
>>>         boxCenter.add(msgLbl);
>>>         newDlg.add(CENTER, boxCenter);
>>>         newDlg.add(BorderLayout.SOUTH, okBtn);
>>>         int msgHeight = boxCenter.getPreferredH();
>>>         int height = newDlg.getPreferredH();
>>>         int width = newDlg.getPreferredW();
>>>         int sideMargins = (f.getWidth() - width - 30) / 2;
>>>         int verticalMargin = (f.getHeight() - height - 
>>> f.getToolbar().getHeight()) /2;
>>>         newDlg.setDisposeWhenPointerOutOfBounds(true);
>>>         newDlg.setAnimationSync(true);
>>>         newDlg.show(verticalMargin/2, verticalMargin + verticalMargin/2, 
>>> sideMargins, sideMargins);
>>>         int newMsgHeight = boxCenter.getPreferredH();
>>>         if(newMsgHeight != msgHeight)
>>>         {
>>>             int newHeight = (newMsgHeight - msgHeight) + height;
>>>             int newVerticalMargin = (f.getHeight() - newHeight - 
>>> f.getToolbar().getHeight()) /2;
>>>             newDlg.resize(verticalMargin/2, verticalMargin/2 + 
>>> (newVerticalMargin - (verticalMargin - newVerticalMargin)), sideMargins, 
>>> sideMargins, false);
>>>         }
>>>
>>>
>>>
>>> On Mon, 28 Dec 2020 at 09:22, 'P5music' via CodenameOne Discussions <
>>> [email protected]> wrote:
>>>
>>>> (Merry Christmas)
>>>>
>>>> My app now features a new dialog class, I called it CommandDialog. It 
>>>> leverages both the features of InteractionDialog and Dialog, so the show() 
>>>> method now returns a Command.
>>>> This class has to be completed to be fully functional:
>>>> I subclassed InteractionDialog so now I need to prevent the mouse 
>>>> events from hitting the underlying components in the form.
>>>> I tried 
>>>>     form.setGrabsPointerEvents(false);
>>>>     form.setIgnorePointerEvents(true);
>>>> but they seem not to be working at all. Furthermore they seem to be the 
>>>> same instruction with negated boolean parameter.
>>>> Moreover I need the setDisposeWhenPointerOutOfBounds(value) feature 
>>>> that also seem not to be working.
>>>>
>>>> I need a workaround if necessary. I have some ideas but maybe something 
>>>> simple is available.
>>>>
>>>> This applies also to the InteractionDialog itself.
>>>>
>>>> Thanks in advance
>>>>
>>>> -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "CodenameOne Discussions" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>> To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/codenameone-discussions/dc0981af-019d-4433-8658-f8b39d326f3dn%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/codenameone-discussions/dc0981af-019d-4433-8658-f8b39d326f3dn%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "CodenameOne Discussions" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>>
> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/codenameone-discussions/46dda134-a710-443b-9f6e-6d4ee42894d4n%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/codenameone-discussions/46dda134-a710-443b-9f6e-6d4ee42894d4n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"CodenameOne Discussions" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/codenameone-discussions/bc825393-3451-44a7-b7d9-c2cdc01f6643n%40googlegroups.com.

Reply via email to