B4A Library Dialogs2 library - an update to the original Dialogs library

agraham

Expert
Licensed User
I wrote the original Dialogs library many moons ago and it has suffered with age owing to the changes made to Android and B4A over the years despite the administrations of several other people.

Although modal dialogs are deprecated in general they are still very convenient for use with my BasicIDE on-device development environment which does not implement Wait For, although there is an ugly workaround. Therefore I have taken the Dialogs v4.01 source code and updated it into a new Dialogs2 library.

Every dialog, except CustomLayoutDialog now supports both Show and ShowAsync. In past editions of B4A events raised by views on a CustomDialog or CustomDialog2 would run while the dialog was shown modally but over the years Erel has had to change the Msgbox mechanism as Android has (d)evolved and now custom dialogs that relied on events from views on the dialog no longer work as expected. For example in the reworked CustomDialog2 example in the DialogsDemo file the ListView ItemClick no longer works when Show is invoked but is fine with ShowAsync while a Button Click works in both cases.

Several of the dialogs would also not work properly in landscape on modern devices with tall narrow screens and higher display densities, I hope they all do now.

The DateDialog and TimeDialog are also problematic in landscape mode which Google doesn't seem to want to fix so I have included alternative TimeDialog2 and DateDialog2 classes in the demo which work for me and hopefully also for you.
 

Attachments

Johan Hormaza

Well-Known Member
Licensed User
Thank you!
I needed it, since version 4.01 had the problem of not showing the keyboard, let alone hiding it, but this version has solved that problem and not only that, but it is also optimized.
Because, there are already some dialogues and there the decision is better, if I see directly in the thread as the dialogue looks, without having to try the demo. :)
You should try, what's more, it would completely replace the previous library!
 

asales

Well-Known Member
Licensed User
Post here if you find any problems.
In Moto G5 Plus (first image) the last day of the month is cutted.
In Moto G4 (second image), the last day is cutted, but I see a scrollbar.
Would be nice if I can ajust it without the scrollbar.
datedialog1a.jpg
datedialog2a.jpg
 

wes58

Active Member
Licensed User
I am not sure whether it is a bug or whether it supposed to be like this.
After you open Time Dialog, pressing Yes/No doesn't dismiss the dialog (you can see that dialog closes and opens again). You have to press Yes/No again for the dialog to close.
 

agraham

Expert
Licensed User
After you open Time Dialog, pressing Yes/No doesn't dismiss the dialog (you can see that dialog closes and opens again)
It's a bug in the demo left over from adding choice of Sync or Async. Delete lines 109 and 110 in the demo.

Note that you would be probably be better off using TimeDialog2. If you look at TimeDialog in landscape you will probably see that it doesn't display properly.
 

Glen Ponder

Member
Licensed User
Hi, thanks for the great library. Downloaded the demo and tested it on my OnePlus 6T running Android 9 with OxygenOS 9.0.15

My reply is regarding DateDialog & TimeDialog.

Attached are 2 screenshots as per the Date Dialog demo with message, title and icon and 2 screenshots where I have removed the message, title and icon.

Similar to the original DateDialog library when I open the dialog there is a white border around the top and right sides.

Whilst the border is superficial it does look a bit odd and not flush, neat and square. Any chance the border can be removed?

A border also appears on the top of the Time Dialog.

Many thanks
 

Attachments

Glen Ponder

Member
Licensed User
thanks for the swift response, but i am not getting a scroll bar and unlike the images in #9 where the border is flush I get the white border. If you are saying it is a Android problem then fair enough.
 

Alessandro71

Active Member
Licensed User
I wrote the original Dialogs library many moons ago and it has suffered with age owing to the changes made to Android and B4A over the years despite the administrations of several other people.
I just updated one of my projects from android:targetSdkVersion="28" to android:targetSdkVersion="29" and the FileDialog doesn't show any files anymore.
Rolling back to 28 works as expected
 
Top