diff options
| author | Tomás Touceda <chiiph@leap.se> | 2013-10-03 11:25:39 -0300 | 
|---|---|---|
| committer | Tomás Touceda <chiiph@leap.se> | 2013-10-03 11:25:39 -0300 | 
| commit | 91fb5281f941af7aa36997a0dec4300d65363fb5 (patch) | |
| tree | ac35c3c3eb55bcb133173b07f89ad06dfbcc13c5 /src/leap/bitmask/gui/wizard.py | |
| parent | 3597f2f043cbe78bb0c7dbc0be4778e2fe9cdd3f (diff) | |
| parent | 99625ee3ab32791c0ddac946685379940b9f291e (diff) | |
Merge remote-tracking branch 'ivan/feature/3996_separate-providers-in-wizard' into develop
Diffstat (limited to 'src/leap/bitmask/gui/wizard.py')
| -rw-r--r-- | src/leap/bitmask/gui/wizard.py | 28 | 
1 files changed, 26 insertions, 2 deletions
| diff --git a/src/leap/bitmask/gui/wizard.py b/src/leap/bitmask/gui/wizard.py index 7cff742e..219270c7 100644 --- a/src/leap/bitmask/gui/wizard.py +++ b/src/leap/bitmask/gui/wizard.py @@ -20,6 +20,7 @@ First run wizard  import os  import logging  import json +import random  from functools import partial @@ -146,10 +147,33 @@ class Wizard(QtGui.QWizard):          self.ui.label_12.setVisible(False)          self.ui.lblProviderPolicy.setVisible(False) -        # Load configured providers into wizard +        self._load_configured_providers() + +    def _load_configured_providers(self): +        """ +        Loads the configured providers into the wizard providers combo box. +        """          ls = LeapSettings()          providers = ls.get_configured_providers() -        self.ui.cbProviders.addItems(providers) +        pinned = [] +        user_added = [] + +        # separate pinned providers from user added ones +        for p in providers: +            if ls.is_pinned_provider(p): +                pinned.append(p) +            else: +                user_added.append(p) + +        if user_added: +            self.ui.cbProviders.addItems(user_added) + +        if user_added and pinned: +            self.ui.cbProviders.addItem('---') + +        if pinned: +            random.shuffle(pinned)  # don't prioritize alphabetically +            self.ui.cbProviders.addItems(pinned)      def get_domain(self):          return self._domain | 
