Exemple #1
0
 def _start_idle(self):
     try:
         check_auth_configuration()
         self.nm.set_statechange_callback(self.on_nm_state_changed)
         self.set_active (True)
         self.update_accounts()
         self.started = True
     except Exception, e:
         logger.exception ("Error starting the application: %s", e)
         try:
             notification.notify(_("Application Error"),
                 _("Error starting the application: %s") % (str(e)),
                 utils.get_error_pixbuf())
         except Exception, e:
             logger.exception ("Error notifying the error: %s", e)
Exemple #2
0
class IndicatorManager():

    __default = None

    def __init__(self):
        if IndicatorManager.__default:
            raise IndicatorManager.__default

        self.indicator = None
        self.indicators = {}
        #TODO Use the correct indicator
        from cloudsn.ui.indicators import statusicon
        statusindi = statusicon.StatusIconIndicator()
        self.indicators[statusindi.get_name()] = statusindi
        try:
            from cloudsn.ui.indicators import indicatorapplet
            indi = indicatorapplet.IndicatorApplet()
            self.indicators[indi.get_name()] = indi
        except Exception, e:
            logger.exception(
                "The indicator applet provider cannot be loaded: %s", e)

        self.config = config.SettingsController.get_instance()
        indicator_conf = self.config.get_prefs()["indicator"]
        if indicator_conf:
            for name in self.indicators:
                if name == indicator_conf:
                    self.indicator = self.indicators[name]
                    break
            if not self.indicator:
                logger.error(
                    "The indicator named %s is configured but it cannot be found"
                    % (indicator_conf))
                notification.notify(
                    _("Indicator error"),
                    _("The indicator named %s is configured but it cannot be found"
                      ) % (indicator_conf), utils.get_error_pixbuf())
        if not self.indicator:
            self.indicator = statusindi

        self.indicator.set_active(True)
            self.indicators[indi_messagingmenu.get_name()] = indi_messagingmenu
        except Exception,e:
            logger.exception("The message menu applet provider cannot be loaded: %s", e)

        self.config = config.SettingsController.get_instance()
        indicator_conf = self.config.get_prefs()["indicator"]
        if indicator_conf:
            for name in self.indicators:
                if name == indicator_conf:
                    self.indicator = self.indicators[name]
                    break
            if not self.indicator:
                logger.error("The indicator named %s is configured but it cannot be found" % (indicator_conf))
                notification.notify (_("Indicator error"),
                                     _("The indicator named %s is configured but it cannot be found") % (indicator_conf),
                                     utils.get_error_pixbuf())
        if not self.indicator:
            if "DESKTOP_SESSION" in os.environ and os.environ["DESKTOP_SESSION"] == 'ubuntu':
                indi_fin = indi_messagingmenu if indi_messagingmenu else indi_indicator
                if not indi_fin:
                    notification.notify (_("Indicator error"),
                                         _("The indicator for ubuntu cannot be loaded "),
                                         utils.get_error_pixbuf())
                    raise Error(_("The indicator for ubuntu cannot be loaded "))
                self.indicator = indi_fin
            else:
                self.indicator = indi_statusicon

        self.indicator.set_active(True)

    @staticmethod
        self.config = config.SettingsController.get_instance()
        indicator_conf = self.config.get_prefs()["indicator"]
        if indicator_conf:
            for name in self.indicators:
                if name == indicator_conf:
                    self.indicator = self.indicators[name]
                    break
            if not self.indicator:
                logger.error(
                    "The indicator named %s is configured but it cannot be found"
                    % (indicator_conf))
                notification.notify(
                    _("Indicator error"),
                    _("The indicator named %s is configured but it cannot be found"
                      ) % (indicator_conf), utils.get_error_pixbuf())
        if not self.indicator:
            if "DESKTOP_SESSION" in os.environ and os.environ[
                    "DESKTOP_SESSION"] == 'ubuntu':
                indi_fin = indi_messagingmenu if indi_messagingmenu else indi_indicator
                if not indi_fin:
                    notification.notify(
                        _("Indicator error"),
                        _("The indicator for ubuntu cannot be loaded "),
                        utils.get_error_pixbuf())
                    raise Error(
                        _("The indicator for ubuntu cannot be loaded "))
                self.indicator = indi_fin
            else:
                self.indicator = indi_statusicon