Example #1
0
	def _onBtnSettings(self):
		acc = self._getSelectedAcc()
		if not acc:
			return
		dlg = accountsetting.Dialog(self.master, acc.cfg)
		if dlg.doModal():
			self.updateAccount(acc)
			self.cfgChanged = True
Example #2
0
	def _onBtnAdd(self):
		cfg = pj.AccountConfig()
		dlg = accountsetting.Dialog(self.master, cfg)
		if dlg.doModal():
			acc = Account(self.app)
			acc.cfg = cfg
			self._showAcc(acc)
			self.accList.append(acc)
			self.cfgChanged = True
Example #3
0
    def _onAccContextMenu(self, label):
        acc = self._getSelectedAccount()
        if not acc:
            return

        if label == 'Unregister':
            acc.setRegistration(False)
        elif label == 'Reregister':
            acc.setRegistration(True)
        elif label == 'Online':
            ps = pj.PresenceStatus()
            ps.status = pj.PJSUA_BUDDY_STATUS_ONLINE
            acc.setOnlineStatus(ps)
        elif label == 'Invisible':
            ps = pj.PresenceStatus()
            ps.status = pj.PJSUA_BUDDY_STATUS_OFFLINE
            acc.setOnlineStatus(ps)
        elif label == 'Away':
            ps = pj.PresenceStatus()
            ps.status = pj.PJSUA_BUDDY_STATUS_ONLINE
            ps.activity = pj.PJRPID_ACTIVITY_AWAY
            ps.note = "Away"
            acc.setOnlineStatus(ps)
        elif label == 'Busy':
            ps = pj.PresenceStatus()
            ps.status = pj.PJSUA_BUDDY_STATUS_ONLINE
            ps.activity = pj.PJRPID_ACTIVITY_BUSY
            ps.note = "Busy"
            acc.setOnlineStatus(ps)
        elif label == 'Settings...':
            self.cfgChanged = False
            dlg = accountsetting.Dialog(self.master, acc.cfg)
            if dlg.doModal():
                self.updateAccount(acc)
                acc.modify(acc.cfg)
        elif label == 'Delete...':
            msg = "Do you really want to delete account '%s'?" % acc.cfg.idUri
            if msgbox.askquestion('Delete account?', msg,
                                  default=msgbox.NO) != u'yes':
                return
            iid = str(acc.randId)
            self.accList.remove(acc)
            acc.setRegistration(False)
            acc.deleting = True
            del acc
            self.tv.delete((iid, ))
        elif label == 'Add buddy...':
            cfg = pj.BuddyConfig()
            dlg = buddy.SettingDialog(self.master, cfg)
            if dlg.doModal():
                self._createBuddy(acc, cfg)
        else:
            assert not ("Unknown menu " + label)
Example #4
0
 def _onTvDoubleClick(self, event):
     iid = self.tv.identify_row(event.y)
     if iid:
         self.tv.selection_set( (iid,) )
         acc = self._getSelectedAccount()
         if acc:
             self.cfgChanged = False
             dlg = accountsetting.Dialog(self.master, acc.cfg)
             if dlg.doModal():
                 self.updateAccount(acc)
                 acc.modify(acc.cfg)
         else:
             bud = self._getSelectedBuddy()
             acc = bud.account
             chat = acc.findChat(bud.cfg.uri)
             if not chat:
                 chat = acc.newChat(bud.cfg.uri)
             chat.showWindow()
Example #5
0
 def _onMenuAddAccount(self):
     cfg = pj.AccountConfig()
     dlg = accountsetting.Dialog(self.master, cfg)
     if dlg.doModal():
         self._createAcc(cfg)