a connection can be active or not. If not active, we cannot login.
This commit is contained in:
		
							parent
							
								
									00da2fee2c
								
							
						
					
					
						commit
						7f64d59c11
					
				
					 2 changed files with 27 additions and 6 deletions
				
			
		| 
						 | 
				
			
			@ -462,7 +462,11 @@ class GajimCore:
 | 
			
		|||
				#TODO: tell the changes to other plugins
 | 
			
		||||
			#('STATUS', account, (status, msg))
 | 
			
		||||
			elif ev[0] == 'STATUS':
 | 
			
		||||
				if (ev[2][0] != 'offline') and (self.connected[ev[1]] == 0):
 | 
			
		||||
				activ = 1
 | 
			
		||||
				if self.cfgParser.tab[ev[1]].has_key('active'):
 | 
			
		||||
					activ = self.cfgParser.tab[ev[1]]['active']
 | 
			
		||||
				if (ev[2][0] != 'offline') and (self.connected[ev[1]] == 0) and \
 | 
			
		||||
					activ:
 | 
			
		||||
					con = self.connect(ev[1])
 | 
			
		||||
					if self.connected[ev[1]]:
 | 
			
		||||
						statuss = ['offline', 'online', 'away', 'xa', 'dnd', \
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -533,9 +533,12 @@ class accounts_Window:
 | 
			
		|||
		model = self.treeview.get_model()
 | 
			
		||||
		model.clear()
 | 
			
		||||
		for account in self.plugin.accounts:
 | 
			
		||||
			activ = 1
 | 
			
		||||
			if self.plugin.accounts[account].has_key("active"):
 | 
			
		||||
				activ = self.plugin.accounts[account]["active"]
 | 
			
		||||
			iter = model.append()
 | 
			
		||||
			model.set(iter, 0, account, 1, \
 | 
			
		||||
				self.plugin.accounts[account]["hostname"])
 | 
			
		||||
				self.plugin.accounts[account]["hostname"], 2, activ)
 | 
			
		||||
 | 
			
		||||
	def on_row_activated(self, widget):
 | 
			
		||||
		"""Activate delete and modify buttons when a row is selected"""
 | 
			
		||||
| 
						 | 
				
			
			@ -595,21 +598,35 @@ class accounts_Window:
 | 
			
		|||
			self.plugin.windows['accountPreference'] = \
 | 
			
		||||
				accountPreference_Window(self.plugin, infos)
 | 
			
		||||
 | 
			
		||||
	def on_toggled(self, cell, path, model=None):
 | 
			
		||||
		iter = model.get_iter(path)
 | 
			
		||||
		model.set_value(iter, 2, not cell.get_active())
 | 
			
		||||
		account = model.get_value(iter, 0)
 | 
			
		||||
		if cell.get_active():
 | 
			
		||||
			self.plugin.accounts[account]["active"] = 0
 | 
			
		||||
		else:
 | 
			
		||||
			self.plugin.accounts[account]["active"] = 1
 | 
			
		||||
		
 | 
			
		||||
	def __init__(self, plugin):
 | 
			
		||||
		self.plugin = plugin
 | 
			
		||||
		self.xml = gtk.glade.XML(GTKGUI_GLADE, 'Accounts', APP)
 | 
			
		||||
		self.window = self.xml.get_widget("Accounts")
 | 
			
		||||
		self.treeview = self.xml.get_widget("treeview")
 | 
			
		||||
		model = gtk.ListStore(gobject.TYPE_STRING, gobject.TYPE_STRING)
 | 
			
		||||
		model = gtk.ListStore(gobject.TYPE_STRING, gobject.TYPE_STRING, \
 | 
			
		||||
			gobject.TYPE_BOOLEAN)
 | 
			
		||||
		self.treeview.set_model(model)
 | 
			
		||||
		#columns
 | 
			
		||||
		renderer = gtk.CellRendererText()
 | 
			
		||||
		renderer.set_data('column', 0)
 | 
			
		||||
		self.treeview.insert_column_with_attributes(-1, _('Name'), renderer, text=0)
 | 
			
		||||
		self.treeview.insert_column_with_attributes(-1, _('Name'), renderer, \
 | 
			
		||||
			text=0)
 | 
			
		||||
		renderer = gtk.CellRendererText()
 | 
			
		||||
		renderer.set_data('column', 1)
 | 
			
		||||
		self.treeview.insert_column_with_attributes(-1, _('Server'), \
 | 
			
		||||
			renderer, text=1)
 | 
			
		||||
		renderer = gtk.CellRendererToggle()
 | 
			
		||||
		renderer.set_property('activatable', True)
 | 
			
		||||
		renderer.connect('toggled', self.on_toggled, model)
 | 
			
		||||
		self.treeview.insert_column_with_attributes(-1, _('Active'), \
 | 
			
		||||
			renderer, active=2)
 | 
			
		||||
		self.xml.signal_connect('gtk_widget_destroy', self.delete_event)
 | 
			
		||||
		self.xml.signal_connect('on_row_activated', self.on_row_activated)
 | 
			
		||||
		self.xml.signal_connect('on_new_clicked', self.on_new_clicked)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue