code: def gui_do_priority(self, priority, method, *args, **kwdargs):
          
          future = Future.Future(priority=priority)
          future.freeze(method, *args, **kwdargs)
          self.priority_gui_queue.put(future)
  
          my_id = thread.get_ident()
          if my_id != self.gui_thread_id:
              return future
docs: General method for asynchronously calling into the GUI.
          It makes a future to call the given (method) with the given (args)
          and (kwdargs) inside the gui thread.  If the calling thread is a
          non-gui thread the future is returned.