def load_window(self): from cloudsn.core.controller import Controller builder=gtk.Builder() builder.set_translation_domain("cloudsn") builder.add_from_file(config.add_data_prefix("preferences.ui")) builder.connect_signals(self) self.window=builder.get_object("dialog") self.minutes=builder.get_object("minutes_spin") self.max_not_spin=builder.get_object("max_not_spin") #tests self.store = builder.get_object("account_store"); self.account_tree = builder.get_object("account_treeview"); self.dialog_new = builder.get_object("account_new_dialog"); self.providers_combo = builder.get_object("providers_combo"); self.providers_store = builder.get_object("providers_store"); self.account_name_entry = builder.get_object("account_name_entry"); self.startup_check = builder.get_object("startup_check") self.indicator_combo = builder.get_object("indicator_combo") self.indicators_store = builder.get_object("indicators_store"); for prov in self.pm.get_providers(): self.providers_store.append([prov.get_icon(), prov.get_name()]) for acc in self.am.get_accounts(): self.store.append([acc.get_icon(), acc.get_name(), self.__get_account_date(acc), acc.get_active()]) self.providers_combo.set_active(0) self.minutes.set_value (float(self.config.get_prefs()["minutes"])) self.max_not_spin.set_value (float(self.config.get_prefs()["max_notifications"])) self.window.set_icon(config.get_cloudsn_icon()) self.dialog_new.set_icon(config.get_cloudsn_icon()) if os.path.exists(config.get_startup_file_path()): self.startup_check.set_active(True) else: self.startup_check.set_active(False) #Populate indicator combo i=0 indicator_name = self.config.get_prefs()["indicator"] for indi in self.im.get_indicators(): self.indicators_store.append([indi.get_name()]) if indi.get_name() == indicator_name: self.indicator_combo.set_active(i) i+=1 #Update the last check date Controller.get_instance().connect ("account-checked", self.__on_account_checked_cb) Controller.get_instance().connect ("account-check-error", self.__on_account_check_error_cb)
def load_window(self): from cloudsn.core.controller import Controller self.builder=Gtk.Builder() self.builder.set_translation_domain("cloudsn") self.builder.add_from_file(config.add_data_prefix("preferences.ui")) self.builder.connect_signals(self) self.window=self.builder.get_object("main_window") self.window.connect ("delete-event", self.window_delete_event_cb) self.window.set_icon(config.get_cloudsn_icon()) self.main_account_tree = self.builder.get_object("main_account_tree"); self.main_store = self.builder.get_object("account_store"); self.providers_combo = self.builder.get_object("providers_combo"); self.providers_store = self.builder.get_object("providers_store"); self.play_button = self.builder.get_object("tool_play"); self.read_button = self.builder.get_object("main_read_button"); #Populate accounts for acc in self.am.get_accounts(): self.main_store.append([acc.get_icon(), acc.get_name(), self.__get_account_date(acc), acc.get_active(), acc.get_total_unread()]) #Populate providers for prov in self.pm.get_providers(): self.providers_store.append([prov.get_icon(), prov.get_name()]) #Update the last check date Controller.get_instance().connect ("account-checked", self.__on_account_checked_cb) Controller.get_instance().connect ("account-check-error", self.__on_account_check_error_cb) self.set_play_active (Controller.get_instance().get_active())
def set_active(self, active): if active: self.statusIcon = gtk.StatusIcon() self.statusIcon.set_from_pixbuf(config.get_cloudsn_icon()) self.statusIcon.set_visible(True) self.statusIcon.set_tooltip(APP_LONG_NAME) self.statusIcon.connect("activate", self.main_cb, self.statusIcon) self.menu = self.create_pref_menu() self.indmenu = self.create_main_menu() self.statusIcon.connect("popup-menu", self.popup_menu_cb, self.menu) self.statusIcon.set_visible(1) else: # TODO Discable the indicators logger.debug("deactivate Not implemented")
def set_active(self, active): if active: self.statusIcon = gtk.StatusIcon() self.statusIcon.set_from_pixbuf(config.get_cloudsn_icon()) self.statusIcon.set_visible(True) self.statusIcon.set_tooltip(APP_LONG_NAME) self.statusIcon.connect('activate', self.main_cb, self.statusIcon) self.menu = self.create_pref_menu() self.indmenu = self.create_main_menu() self.statusIcon.connect('popup-menu', self.popup_menu_cb, self.menu) self.statusIcon.set_visible(1) else: #TODO Discable the indicators logger.debug("deactivate Not implemented")
def check_auth_configuration(): try: import gnomekeyring as gk from ..core.keyrings import gkeyring except Exception: logger.debug("Gnome keyring is not available") return conf = SettingsController.get_instance() prefs = conf.get_prefs() if AUTH_DONT_ASK_KEY in prefs and get_boolean( prefs[AUTH_DONT_ASK_KEY]) == True: return if get_keyring().get_id() == gkeyring.GNOME_KEYRING_ID: return label = Gtk.Label() label.set_markup( _("""<b>Security warning</b> You have gnome-keyring installed but your are using plain text encryption to store your passwords. You can select the encryption method in the preferences dialog. """)) dialog = Gtk.Dialog( APP_LONG_NAME, None, Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT, (Gtk.STOCK_OK, Gtk.ResponseType.ACCEPT)) dialog.set_icon(get_cloudsn_icon()) dialog.vbox.pack_start(label, False, False, 10) checkbox = Gtk.CheckButton(_("Don't ask me again")) checkbox.show() dialog.vbox.pack_end(checkbox, False, False, 0) label.show() response = dialog.run() dialog.destroy() if checkbox.get_active(): conf.set_pref(AUTH_DONT_ASK_KEY, True) conf.save_prefs()
def check_auth_configuration(): try: import gnomekeyring as gk from ..core.keyrings import gkeyring except Exception: logger.debug("Gnome keyring is not available") return conf = SettingsController.get_instance() prefs = conf.get_prefs() if AUTH_DONT_ASK_KEY in prefs and get_boolean(prefs[AUTH_DONT_ASK_KEY]) == True: return if get_keyring().get_id() == gkeyring.GNOME_KEYRING_ID: return label = Gtk.Label() label.set_markup(_("""<b>Security warning</b> You have gnome-keyring installed but your are using plain text encryption to store your passwords. You can select the encryption method in the preferences dialog. """)) dialog = Gtk.Dialog(APP_LONG_NAME, None, Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT, (Gtk.STOCK_OK, Gtk.ResponseType.ACCEPT)) dialog.set_icon(get_cloudsn_icon()) dialog.vbox.pack_start(label, False, False, 10) checkbox = Gtk.CheckButton(_("Don't ask me again")) checkbox.show() dialog.vbox.pack_end(checkbox, False, False, 0) label.show() response = dialog.run() dialog.destroy() if checkbox.get_active(): conf.set_pref (AUTH_DONT_ASK_KEY, True) conf.save_prefs()
def load_window(self): from cloudsn.core.controller import Controller self.builder = gtk.Builder() self.builder.set_translation_domain("cloudsn") self.builder.add_from_file(config.add_data_prefix("preferences.ui")) self.builder.connect_signals(self) self.window = self.builder.get_object("main_window") self.window.connect("delete-event", self.window_delete_event_cb) self.window.set_icon(config.get_cloudsn_icon()) self.main_account_tree = self.builder.get_object("main_account_tree") self.main_store = self.builder.get_object("account_store") self.providers_combo = self.builder.get_object("providers_combo") self.providers_store = self.builder.get_object("providers_store") self.play_button = self.builder.get_object("tool_play") self.read_button = self.builder.get_object("main_read_button") #Populate accounts for acc in self.am.get_accounts(): self.main_store.append([ acc.get_icon(), acc.get_name(), self.__get_account_date(acc), acc.get_active(), acc.get_total_unread() ]) #Populate providers for prov in self.pm.get_providers(): self.providers_store.append([prov.get_icon(), prov.get_name()]) #Update the last check date Controller.get_instance().connect("account-checked", self.__on_account_checked_cb) Controller.get_instance().connect("account-check-error", self.__on_account_check_error_cb) self.set_play_active(Controller.get_instance().get_active())