omz:forum

    • Register
    • Login
    • Search
    • Recent
    • Popular

    Welcome!

    This is the community forum for my apps Pythonista and Editorial.

    For individual support questions, you can also send an email. If you have a very short question or just want to say hello — I'm @olemoritz on Twitter.


    Problem with list_dialog in combination with an already presented view

    Pythonista
    listdialog
    2
    4
    1780
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Kluesi
      Kluesi last edited by Kluesi

      Hi

      I want to present a view with a tiny little ui design. I use a dialogs.list_dialog to choose between options at the beginning. Everything works fine. Now I want to put this in a loop. The ui is visible, I choose the option, I do anything and when I finish this part I want to show the list_dialog again. But at the second time I get the Message: The view is already beeing presented. I analyzed some combinations and I see that everytime the ui.on_screen is true, the dialog comes up with the error message. If it is false everything is fine. It is false when I press the cross button of the ui. Then I come to the dialog again and the view ist not ui.on_screen.

      Now the question. How can I close the ui in the script so that ui.on_screen is false? ui.close and ui.View.close(v) does it not. When I close the view, ui.on_screen is already true.

      Thanks Jens

      cvp 1 Reply Last reply Reply Quote 0
      • cvp
        cvp @Kluesi last edited by

        @Kluesi Not sure I correctly understand (as usual with my poor English 😢)
        This works

        import dialogs
        def l(items):
        	f = dialogs.list_dialog(items=items)
        	return f
        while True:
        	items = ['one','two']
        	f = l(items)
        	print(f)
        	if f == None:
        		break
        

        Please post your code

        1 Reply Last reply Reply Quote 0
        • Kluesi
          Kluesi last edited by

          Thats funny. I worked on this code many hours and right after I posted the problem I found the solution. After v.close() I put v.wait_modal() and then it works. It seems that the close process is not completely done when the next command is interpreted. Wait modal waits until the view is completely closed. May be a workaround but for me it is ok.

          cvp 1 Reply Last reply Reply Quote 0
          • cvp
            cvp @Kluesi last edited by cvp

            @Kluesi that's how dialogs.xxxxx_dialog does...

            1 Reply Last reply Reply Quote 0
            • First post
              Last post
            Powered by NodeBB Forums | Contributors