mirror of
				https://github.com/MCV-Software/TWBlue.git
				synced 2025-11-03 21:37:05 +00:00 
			
		
		
		
	Added GUI for user alias addition
This commit is contained in:
		@@ -185,6 +185,7 @@ class Controller(object):
 | 
				
			|||||||
        widgetUtils.connect_event(self.view, widgetUtils.MENU, self.report_error, self.view.reportError)
 | 
					        widgetUtils.connect_event(self.view, widgetUtils.MENU, self.report_error, self.view.reportError)
 | 
				
			||||||
        widgetUtils.connect_event(self.view, widgetUtils.MENU, self.view_documentation, self.view.doc)
 | 
					        widgetUtils.connect_event(self.view, widgetUtils.MENU, self.view_documentation, self.view.doc)
 | 
				
			||||||
        widgetUtils.connect_event(self.view, widgetUtils.MENU, self.view_changelog, self.view.changelog)
 | 
					        widgetUtils.connect_event(self.view, widgetUtils.MENU, self.view_changelog, self.view.changelog)
 | 
				
			||||||
 | 
					        widgetUtils.connect_event(self.view, widgetUtils.MENU, self.add_alias, self.view.addAlias)
 | 
				
			||||||
        widgetUtils.connect_event(self.view, widgetUtils.MENU, self.add_to_list, self.view.addToList)
 | 
					        widgetUtils.connect_event(self.view, widgetUtils.MENU, self.add_to_list, self.view.addToList)
 | 
				
			||||||
        widgetUtils.connect_event(self.view, widgetUtils.MENU, self.remove_from_list, self.view.removeFromList)
 | 
					        widgetUtils.connect_event(self.view, widgetUtils.MENU, self.remove_from_list, self.view.removeFromList)
 | 
				
			||||||
        widgetUtils.connect_event(self.view, widgetUtils.MENU, self.update_buffer, self.view.update_buffer)
 | 
					        widgetUtils.connect_event(self.view, widgetUtils.MENU, self.update_buffer, self.view.update_buffer)
 | 
				
			||||||
@@ -754,6 +755,26 @@ class Controller(object):
 | 
				
			|||||||
            users = utils.get_all_users(tweet, buff.session)
 | 
					            users = utils.get_all_users(tweet, buff.session)
 | 
				
			||||||
        u = userActionsController.userActionsController(buff, users, "report")
 | 
					        u = userActionsController.userActionsController(buff, users, "report")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def add_alias(self, *args, **kwargs):
 | 
				
			||||||
 | 
					        buff = self.get_best_buffer()
 | 
				
			||||||
 | 
					        if not hasattr(buff, "get_right_tweet"): return
 | 
				
			||||||
 | 
					        tweet = buff.get_right_tweet()
 | 
				
			||||||
 | 
					        if buff.type == "people":
 | 
				
			||||||
 | 
					            users = [tweet.screen_name]
 | 
				
			||||||
 | 
					        elif buff.type == "dm":
 | 
				
			||||||
 | 
					            users = [buff.session.get_user(tweet.message_create["sender_id"]).screen_name]
 | 
				
			||||||
 | 
					        else:
 | 
				
			||||||
 | 
					            users = utils.get_all_users(tweet, buff.session)
 | 
				
			||||||
 | 
					        dlg = dialogs.utils.addAliasDialog(_("Add an user alias"), users)
 | 
				
			||||||
 | 
					        if dlg.get_response() == widgetUtils.OK:
 | 
				
			||||||
 | 
					            user, alias = dlg.get_user()
 | 
				
			||||||
 | 
					            if user == "" or alias == "":
 | 
				
			||||||
 | 
					                return
 | 
				
			||||||
 | 
					            user_id = buff.session.get_user_by_screen_name(user)
 | 
				
			||||||
 | 
					            buff.session.settings["user-aliases"][str(user_id)] = alias
 | 
				
			||||||
 | 
					            buff.session.settings.write()
 | 
				
			||||||
 | 
					            output.speak(_("Alias has been set correctly for {}.").format(user))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def post_tweet(self, event=None):
 | 
					    def post_tweet(self, event=None):
 | 
				
			||||||
        buffer = self.get_best_buffer()
 | 
					        buffer = self.get_best_buffer()
 | 
				
			||||||
        buffer.post_status()
 | 
					        buffer.post_status()
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -48,3 +48,36 @@ class selectUserDialog(baseDialog.BaseWXDialog):
 | 
				
			|||||||
    def get_user(self):
 | 
					    def get_user(self):
 | 
				
			||||||
        return self.cb.GetValue()
 | 
					        return self.cb.GetValue()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					class addAliasDialog(baseDialog.BaseWXDialog):
 | 
				
			||||||
 | 
					    def __init__(self, title, users):
 | 
				
			||||||
 | 
					        super(addAliasDialog, self).__init__(parent=None, id=wx.ID_ANY, title=title)
 | 
				
			||||||
 | 
					        panel = wx.Panel(self)
 | 
				
			||||||
 | 
					        userSizer = wx.BoxSizer()
 | 
				
			||||||
 | 
					        self.cb = wx.ComboBox(panel, -1, choices=users, value=users[0], size=wx.DefaultSize)
 | 
				
			||||||
 | 
					        self.cb.SetFocus()
 | 
				
			||||||
 | 
					        self.autocompletion = wx.Button(panel, -1, _(u"&Autocomplete users"))
 | 
				
			||||||
 | 
					        userSizer.Add(wx.StaticText(panel, -1, _(u"User")), 0, wx.ALL, 5)
 | 
				
			||||||
 | 
					        userSizer.Add(self.cb, 0, wx.ALL, 5)
 | 
				
			||||||
 | 
					        userSizer.Add(self.autocompletion, 0, wx.ALL, 5)
 | 
				
			||||||
 | 
					        aliasSizer = wx.BoxSizer(wx.HORIZONTAL)
 | 
				
			||||||
 | 
					        aliasLabel = wx.StaticText(panel, wx.ID_ANY, _("Alias"))
 | 
				
			||||||
 | 
					        self.alias = wx.TextCtrl(panel, wx.ID_ANY)
 | 
				
			||||||
 | 
					        aliasSizer.Add(aliasLabel, 0, wx.ALL, 5)
 | 
				
			||||||
 | 
					        aliasSizer.Add(self.alias, 0, wx.ALL, 5)
 | 
				
			||||||
 | 
					        sizer = wx.BoxSizer(wx.VERTICAL)
 | 
				
			||||||
 | 
					        ok = wx.Button(panel, wx.ID_OK, _(u"OK"))
 | 
				
			||||||
 | 
					        ok.SetDefault()
 | 
				
			||||||
 | 
					#  ok.Bind(wx.EVT_BUTTON, self.onok)
 | 
				
			||||||
 | 
					        cancel = wx.Button(panel, wx.ID_CANCEL, _(u"Close"))
 | 
				
			||||||
 | 
					        btnsizer = wx.BoxSizer()
 | 
				
			||||||
 | 
					        btnsizer.Add(ok, 0, wx.ALL, 5)
 | 
				
			||||||
 | 
					        btnsizer.Add(cancel, 0, wx.ALL, 5)
 | 
				
			||||||
 | 
					        sizer.Add(userSizer, 0, wx.ALL, 5)
 | 
				
			||||||
 | 
					        sizer.Add(aliasSizer, 0, wx.ALL, 5)
 | 
				
			||||||
 | 
					        sizer.Add(btnsizer, 0, wx.ALL, 5)
 | 
				
			||||||
 | 
					        panel.SetSizer(sizer)
 | 
				
			||||||
 | 
					        self.SetClientSize(sizer.CalcMin())
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def get_user(self):
 | 
				
			||||||
 | 
					        return (self.cb.GetValue(), self.alias.GetValue())
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user