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.

Reply via email to