Ignore:
Timestamp:
08/06/16 08:07:39 (8 years ago)
Author:
István Váradi <ivaradi@…>
Branch:
default
hg-Phase:
(<MercurialRepository 1 'hg:/home/ivaradi/mlx/hg' '/'>, 'public')
Message:

Simplified SimBrief handling by using the CEF API directly (re #310)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/mlx/gui/flight.py

    r798 r805  
    25002500        table.attach(self._rememberButton, 1, 2, 2, 3, ypadding = 8)
    25012501
    2502         self._credentialsCondition = threading.Condition()
    2503         self._credentialsAvailable = False
    2504         self._credentialsUserName = None
    2505         self._credentialsPassword = None
    2506 
    25072502        label = gtk.Label(xstr("simbrief_extra_fuel"))
    25082503        label.set_use_underline(True)
     
    26752670            self._wizard.gui.beginBusy(xstr("simbrief_calling"))
    26762671
    2677             cef.startFastTimeout()
    26782672            cef.callSimBrief(plan,
    2679                              self._getCredentialsCallback,
    2680                              self._simBriefProgressCallback,
     2673                             self._getCredentials,
     2674                             self._simBriefProgress,
    26812675                             SimBriefSetupPage.getHTMLFilePath())
    26822676
    26832677            startSound(const.SOUND_NOTAM)
    2684 
    2685     def _getCredentialsCallback(self, count):
    2686         """Called when the SimBrief home page requests the credentials."""
    2687         with self._credentialsCondition:
    2688             self._credentialsAvailable = False
    2689 
    2690             gobject.idle_add(self._getCredentials, count)
    2691 
    2692             while not self._credentialsAvailable:
    2693                 self._credentialsCondition.wait()
    2694 
    2695             return (self._credentialsUserName, self._credentialsPassword)
    26962678
    26972679    def _getCredentials(self, count):
     
    27012683        are returned. Otherwise a dialog box is displayed informing the user of
    27022684        invalid credentials and requesting another set of them."""
    2703         with self._credentialsCondition:
    2704             if count==0:
    2705                 self._credentialsUserName = self._userName.get_text()
    2706                 self._credentialsPassword = self._password.get_text()
     2685        print "_getCredentials", count
     2686        if count==0:
     2687            return (self._userName.get_text(), self._password.get_text())
     2688        else:
     2689            gui = self._wizard.gui
     2690            config = gui.config
     2691
     2692            dialog = SimBriefCredentialsDialog(gui,
     2693                                               config.simBriefUserName,
     2694                                               config.simBriefPassword,
     2695                                               config.rememberSimBriefPassword)
     2696            response = dialog.run()
     2697
     2698            if response==RESPONSETYPE_OK:
     2699                userName = dialog.userName
     2700                self._userName.set_text(userName)
     2701                password = dialog.password
     2702                self._password.set_text(password)
     2703                rememberPassword = dialog.rememberPassword
     2704
     2705                config.simBriefUserName = userName
     2706
     2707                config.simBriefPassword = \
     2708                    password if rememberPassword else ""
     2709                config.rememberSimBriefPassword = rememberPassword
     2710
     2711                config.save()
     2712
     2713                return (userName, password)
    27072714            else:
    2708                 gui = self._wizard.gui
    2709                 config = gui.config
    2710 
    2711                 dialog = SimBriefCredentialsDialog(gui,
    2712                                                    config.simBriefUserName,
    2713                                                    config.simBriefPassword,
    2714                                                    config.rememberSimBriefPassword)
    2715                 response = dialog.run()
    2716 
    2717                 if response==RESPONSETYPE_OK:
    2718                     self._credentialsUserName = dialog.userName
    2719                     self._userName.set_text(self._credentialsUserName)
    2720                     self._credentialsPassword = dialog.password
    2721                     self._password.set_text(self._credentialsPassword)
    2722                     rememberPassword = dialog.rememberPassword
    2723 
    2724                     config.simBriefUserName = self._credentialsUserName
    2725 
    2726                     config.simBriefPassword = \
    2727                         self._credentialsPassword if rememberPassword else ""
    2728                     config.rememberSimBriefPassword = rememberPassword
    2729 
    2730                     config.save()
    2731                 else:
    2732                     self._credentialsUserName = None
    2733                     self._credentialsPassword = None
    2734 
    2735             self._credentialsAvailable = True
    2736             self._credentialsCondition.notify()
    2737 
    2738     def _simBriefProgressCallback(self, progress, result, flightInfo):
    2739         """Called by the SimBrief handling thread."""
    2740         gobject.idle_add(self._simBriefProgress, progress, result, flightInfo)
     2715                return (None, None)
    27412716
    27422717    def _simBriefProgress(self, progress, result, flightInfo):
     
    27482723            self._wizard.gui.updateBusyState(xstr(message))
    27492724        else:
    2750             cef.stopFastTimeout()
    27512725            self._wizard.gui.endBusy()
    27522726
Note: See TracChangeset for help on using the changeset viewer.