mirror of
https://github.com/MCV-Software/TWBlue.git
synced 2024-11-23 11:48:07 -06:00
Merge branch 'master' of https://github.com/manuelcortez/TWBlue
This commit is contained in:
commit
f36accf89b
@ -35,6 +35,7 @@ timelines = list(default=list())
|
|||||||
tweet_searches = list(default=list())
|
tweet_searches = list(default=list())
|
||||||
lists = list(default=list())
|
lists = list(default=list())
|
||||||
favourites_timelines = list(default=list())
|
favourites_timelines = list(default=list())
|
||||||
|
trending_topic_buffers = list(default=list())
|
||||||
muted_buffers = list(default=list())
|
muted_buffers = list(default=list())
|
||||||
autoread_buffers = list(default=list())
|
autoread_buffers = list(default=list())
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ class autocompletionUsers(object):
|
|||||||
try:
|
try:
|
||||||
pattern = text.split()[-1]
|
pattern = text.split()[-1]
|
||||||
except IndexError:
|
except IndexError:
|
||||||
output.speak(_(u"You have to start to write"))
|
output.speak(_(u"You have to start writing"))
|
||||||
return
|
return
|
||||||
if pattern.startswith("@") == True:
|
if pattern.startswith("@") == True:
|
||||||
db = storage.storage()
|
db = storage.storage()
|
||||||
@ -26,6 +26,6 @@ class autocompletionUsers(object):
|
|||||||
self.window.PopupMenu(menu, self.window.text.GetPosition())
|
self.window.PopupMenu(menu, self.window.text.GetPosition())
|
||||||
menu.Destroy()
|
menu.Destroy()
|
||||||
else:
|
else:
|
||||||
output.speak(_(u"There is not results in your users database"))
|
output.speak(_(u"There are not results in your users database"))
|
||||||
else:
|
else:
|
||||||
output.speak(_(u"Autocompletion only works for users."))
|
output.speak(_(u"Autocompletion only works for users."))
|
@ -36,3 +36,17 @@ class autocompletionSettings(object):
|
|||||||
wx_settings.show_success_dialog()
|
wx_settings.show_success_dialog()
|
||||||
self.dialog.Destroy()
|
self.dialog.Destroy()
|
||||||
|
|
||||||
|
def execute_at_startup(window):
|
||||||
|
database = storage.storage()
|
||||||
|
if config.main["mysc"]["save_followers_in_autocompletion_db"] == True:
|
||||||
|
buffer = window.search_buffer("people", "followers")
|
||||||
|
for i in buffer.db.settings[buffer.name_buffer]:
|
||||||
|
database.set_user(i["screen_name"], i["name"], 1)
|
||||||
|
else:
|
||||||
|
database.remove_by_buffer(1)
|
||||||
|
if config.main["mysc"]["save_friends_in_autocompletion_db"] == True:
|
||||||
|
buffer = window.search_buffer("people", "friends")
|
||||||
|
for i in buffer.db.settings[buffer.name_buffer]:
|
||||||
|
database.set_user(i["screen_name"], i["name"], 2)
|
||||||
|
else:
|
||||||
|
database.remove_by_buffer(2)
|
@ -20,4 +20,4 @@ class autocompletionSettingsDialog(wx.Dialog):
|
|||||||
self.SetClientSize(sizer.CalcMin())
|
self.SetClientSize(sizer.CalcMin())
|
||||||
|
|
||||||
def show_success_dialog():
|
def show_success_dialog():
|
||||||
wx.MessageDialog(None, _(u"Users TwBlue-database has been updated with new users."), _(u"Done"), wx.OK).ShowModal()
|
wx.MessageDialog(None, _(u"TWBlue's database of users has been updated."), _(u"Done"), wx.OK).ShowModal()
|
@ -8,3 +8,4 @@ from lists import *
|
|||||||
from people import *
|
from people import *
|
||||||
from tweet_searches import *
|
from tweet_searches import *
|
||||||
from user_searches import *
|
from user_searches import *
|
||||||
|
from trends import *
|
@ -150,7 +150,7 @@ class basePanel(wx.Panel):
|
|||||||
if config.main["general"]["relative_times"] == True:
|
if config.main["general"]["relative_times"] == True:
|
||||||
# On windows we need only put the new date on the column, but under linux and mac it isn't possible.
|
# On windows we need only put the new date on the column, but under linux and mac it isn't possible.
|
||||||
if self.system == "Windows":
|
if self.system == "Windows":
|
||||||
original_date = datetime.datetime.strptime(tweet["created_at"], "%a %b %d %H:%M:%S +0000 %Y")
|
original_date = datetime.datetime.strptime(self.db.settings[self.name_buffer][self.list.get_selected()]["created_at"], "%a %b %d %H:%M:%S +0000 %Y")
|
||||||
date = original_date-datetime.timedelta(seconds=-self.db.settings["utc_offset"])
|
date = original_date-datetime.timedelta(seconds=-self.db.settings["utc_offset"])
|
||||||
ts = prettydate(original_date)
|
ts = prettydate(original_date)
|
||||||
self.list.list.SetStringItem(self.list.get_selected(), 2, ts)
|
self.list.list.SetStringItem(self.list.get_selected(), 2, ts)
|
||||||
@ -159,7 +159,7 @@ class basePanel(wx.Panel):
|
|||||||
if twitter.utils.is_audio(tweet):
|
if twitter.utils.is_audio(tweet):
|
||||||
sound.player.play("audio.ogg", False)
|
sound.player.play("audio.ogg", False)
|
||||||
if twitter.utils.is_geocoded(tweet):
|
if twitter.utils.is_geocoded(tweet):
|
||||||
sound.player.play("geo.mp3", False)
|
sound.player.play("geo.ogg", False)
|
||||||
|
|
||||||
def start_streams(self):
|
def start_streams(self):
|
||||||
if self.name_buffer == "sent":
|
if self.name_buffer == "sent":
|
||||||
|
@ -20,18 +20,20 @@ import wx
|
|||||||
from multiplatform_widgets import widgets
|
from multiplatform_widgets import widgets
|
||||||
|
|
||||||
class accountPanel(wx.Panel):
|
class accountPanel(wx.Panel):
|
||||||
def __init__(self, parent):
|
def __init__(self, parent, name_buffer):
|
||||||
super(accountPanel, self).__init__(parent=parent)
|
super(accountPanel, self).__init__(parent=parent)
|
||||||
self.type = "account"
|
self.type = "account"
|
||||||
|
self.name_buffer = name_buffer
|
||||||
sizer = wx.BoxSizer(wx.VERTICAL)
|
sizer = wx.BoxSizer(wx.VERTICAL)
|
||||||
self.list = widgets.list(self, _(u"Announce"))
|
self.list = widgets.list(self, _(u"Announce"))
|
||||||
sizer.Add(self.list.list, 0, wx.ALL, 5)
|
sizer.Add(self.list.list, 0, wx.ALL, 5)
|
||||||
self.SetSizer(sizer)
|
self.SetSizer(sizer)
|
||||||
|
|
||||||
class emptyPanel(accountPanel):
|
|
||||||
def __init__(self, parent):
|
|
||||||
super(emptyPanel, self).__init__(parent=parent)
|
|
||||||
self.type = "empty"
|
|
||||||
|
|
||||||
def get_more_items(self):
|
def get_more_items(self):
|
||||||
output.speak(_(u"This action is not supported for this buffer"))
|
output.speak(_(u"This action is not supported for this buffer"))
|
||||||
|
|
||||||
|
class emptyPanel(accountPanel):
|
||||||
|
def __init__(self, parent):
|
||||||
|
super(emptyPanel, self).__init__(parent=parent, name_buffer="")
|
||||||
|
self.type = "empty"
|
||||||
|
|
||||||
|
@ -17,35 +17,162 @@
|
|||||||
#
|
#
|
||||||
############################################################
|
############################################################
|
||||||
import wx
|
import wx
|
||||||
import sound
|
|
||||||
import config
|
|
||||||
import twitter
|
|
||||||
import gui.dialogs
|
import gui.dialogs
|
||||||
|
import twitter
|
||||||
|
import config
|
||||||
|
import sound
|
||||||
import logging as original_logger
|
import logging as original_logger
|
||||||
from base import basePanel
|
import output
|
||||||
|
import platform
|
||||||
|
import menus
|
||||||
|
from multiplatform_widgets import widgets
|
||||||
|
from mysc.thread_utils import call_threaded
|
||||||
log = original_logger.getLogger("buffers.base")
|
log = original_logger.getLogger("buffers.base")
|
||||||
|
|
||||||
class trendPanel(basePanel):
|
class trendsPanel(wx.Panel):
|
||||||
def __init__(self, parent, window, name_buffer, *args, **kwargs):
|
|
||||||
super(searchPanel, self).__init__(parent, window, name_buffer, sound)
|
|
||||||
self.type = "trend"
|
|
||||||
self.args = kwargs
|
|
||||||
|
|
||||||
def start_streams(self):
|
def compose_function(self, trend):
|
||||||
num = twitter.starting.search(self.db, self.twitter, self.name_buffer, **self.args)
|
return [trend["name"]]
|
||||||
if num > 0: sound.player.play("search_updated.ogg")
|
|
||||||
self.put_items(num)
|
def bind_events(self):
|
||||||
return num
|
self.Bind(wx.EVT_LIST_ITEM_RIGHT_CLICK, self.showMenu, self.list.list)
|
||||||
|
self.Bind(wx.EVT_LIST_KEY_DOWN, self.showMenuByKey, self.list.list)
|
||||||
|
self.list.list.Bind(wx.EVT_CHAR_HOOK, self.interact)
|
||||||
|
|
||||||
|
def get_message(self, dialog=False):
|
||||||
|
return self.compose_function(self.trends[self.list.get_selected()])[0]
|
||||||
|
|
||||||
|
|
||||||
|
def create_list(self):
|
||||||
|
self.list = widgets.list(self, _(u"Trending topic"), style=wx.LC_REPORT|wx.LC_SINGLE_SEL|wx.LC_VRULES)
|
||||||
|
if self.system == "Windows":
|
||||||
|
self.list.set_windows_size(0, 30)
|
||||||
|
self.list.set_size()
|
||||||
|
|
||||||
|
def __init__(self, parent, window, name_buffer, argumento=None, sound=""):
|
||||||
|
self.type = "trends"
|
||||||
|
self.twitter = window.twitter
|
||||||
|
self.name_buffer = name_buffer
|
||||||
|
self.argumento = argumento
|
||||||
|
self.sound = sound
|
||||||
|
self.parent = window
|
||||||
|
self.system = platform.system()
|
||||||
|
wx.Panel.__init__(self, parent)
|
||||||
|
self.trends = []
|
||||||
|
self.sizer = wx.BoxSizer(wx.VERTICAL)
|
||||||
|
self.create_list()
|
||||||
|
self.btn = wx.Button(self, -1, _(u"Tweet"))
|
||||||
|
self.btn.Bind(wx.EVT_BUTTON, self.post_status)
|
||||||
|
self.tweetTrendBtn = wx.Button(self, -1, _(u"Tweet about this trend"))
|
||||||
|
self.tweetTrendBtn.Bind(wx.EVT_BUTTON, self.onResponse)
|
||||||
|
btnSizer = wx.BoxSizer(wx.HORIZONTAL)
|
||||||
|
btnSizer.Add(self.btn, 0, wx.ALL, 5)
|
||||||
|
btnSizer.Add(self.tweetTrendBtn, 0, wx.ALL, 5)
|
||||||
|
self.sizer.Add(btnSizer, 0, wx.ALL, 5)
|
||||||
|
self.sizer.Add(self.list.list, 0, wx.ALL, 5)
|
||||||
|
self.bind_events()
|
||||||
|
self.SetSizer(self.sizer)
|
||||||
|
|
||||||
def remove_buffer(self):
|
def remove_buffer(self):
|
||||||
dlg = wx.MessageDialog(self, _(u"Do you really want to delete this search term?"), _(u"Attention"), style=wx.ICON_QUESTION|wx.YES_NO)
|
dlg = wx.MessageDialog(self, _(u"Do you really want to delete this buffer?"), _(u"Attention"), style=wx.ICON_QUESTION|wx.YES_NO)
|
||||||
if dlg.ShowModal() == wx.ID_YES:
|
if dlg.ShowModal() == wx.ID_YES:
|
||||||
names = config.main["other_buffers"]["tweet_searches"]
|
topics = config.main["other_buffers"]["trending_topic_buffers"]
|
||||||
user = self.name_buffer[:-7]
|
topic = self.name_buffer
|
||||||
log.info(u"Deleting %s's search term" % user)
|
log.info(u"Deleting %s's trending topics buffer" % topic)
|
||||||
if user in names:
|
if topic in topics:
|
||||||
names.remove(user)
|
topics.remove(topic)
|
||||||
self.db.settings.pop(self.name_buffer)
|
return 0
|
||||||
pos = self.db.settings["buffers"].index(self.name_buffer)
|
|
||||||
self.db.settings["buffers"].remove(self.name_buffer)
|
def start_streams(self):
|
||||||
return pos
|
data = self.twitter.twitter.get_place_trends(id=self.argumento)
|
||||||
|
self.trends = data[0]["trends"]
|
||||||
|
sound.player.play(self.sound)
|
||||||
|
return len(self.trends)
|
||||||
|
|
||||||
|
def get_more_items(self):
|
||||||
|
output.speak(_(u"This action is not supported for this buffer"))
|
||||||
|
|
||||||
|
def put_items(self, num):
|
||||||
|
selected_item = self.list.get_selected()
|
||||||
|
if self.list.get_count() == 0:
|
||||||
|
for i in self.trends:
|
||||||
|
tweet = self.compose_function(i)
|
||||||
|
self.list.insert_item(False, *tweet)
|
||||||
|
self.set_list_position()
|
||||||
|
elif self.list.get_count() > 0:
|
||||||
|
if config.main["general"]["reverse_timelines"] == False:
|
||||||
|
for i in self.trends:
|
||||||
|
tweet = self.compose_function(i)
|
||||||
|
self.list.insert_item(False, *tweet)
|
||||||
|
else:
|
||||||
|
for i in self.trends:
|
||||||
|
tweet = self.compose_function(i)
|
||||||
|
self.list.insert_item(True, *tweet)
|
||||||
|
self.list.select_item(selected_item)
|
||||||
|
|
||||||
|
def post_status(self, ev=None):
|
||||||
|
text = gui.dialogs.message.tweet(_(u"Write the tweet here"), _(u"Tweet"), "", self)
|
||||||
|
if text.ShowModal() == wx.ID_OK:
|
||||||
|
if text.image == None:
|
||||||
|
call_threaded(self.twitter.api_call, call_name="update_status", _sound="tweet_send.ogg", status=text.text.GetValue())
|
||||||
|
else:
|
||||||
|
call_threaded(self.twitter.api_call, call_name="update_status_with_media", _sound="tweet_send.ogg", status=text.text.GetValue(), media=text.file)
|
||||||
|
if ev != None: self.list.list.SetFocus()
|
||||||
|
|
||||||
|
def onRetweet(self, event=None): pass
|
||||||
|
|
||||||
|
def onResponse(self, ev):
|
||||||
|
trend = self.trends[self.list.get_selected()]["name"]
|
||||||
|
text = gui.dialogs.message.tweet(_(u"Write the tweet here"), _(u"Tweet"), trend, self)
|
||||||
|
if text.ShowModal() == wx.ID_OK:
|
||||||
|
if text.image == None:
|
||||||
|
call_threaded(self.twitter.api_call, call_name="update_status", _sound="tweet_send.ogg", status=text.text.GetValue())
|
||||||
|
else:
|
||||||
|
call_threaded(self.twitter.api_call, call_name="update_status_with_media", _sound="tweet_send.ogg", status=text.text.GetValue(), media=text.file)
|
||||||
|
if ev != None: self.list.list.SetFocus()
|
||||||
|
|
||||||
|
def interact(self, ev):
|
||||||
|
if type(ev) is str: event = ev
|
||||||
|
else:
|
||||||
|
if ev.GetKeyCode() == wx.WXK_F5: event = "volume_down"
|
||||||
|
elif ev.GetKeyCode() == wx.WXK_F6: event = "volume_up"
|
||||||
|
elif ev.GetKeyCode() == wx.WXK_DELETE and ev.ShiftDown(): event = "clear_list"
|
||||||
|
else:
|
||||||
|
ev.Skip()
|
||||||
|
return
|
||||||
|
if event == "volume_down":
|
||||||
|
if config.main["sound"]["volume"] > 0.05:
|
||||||
|
config.main["sound"]["volume"] = config.main["sound"]["volume"]-0.05
|
||||||
|
sound.player.play("volume_changed.ogg", False)
|
||||||
|
if hasattr(self.parent, "audioStream"):
|
||||||
|
self.parent.audioStream.stream.volume = config.main["sound"]["volume"]
|
||||||
|
elif event == "volume_up":
|
||||||
|
if config.main["sound"]["volume"] < 0.95:
|
||||||
|
config.main["sound"]["volume"] = config.main["sound"]["volume"]+0.05
|
||||||
|
sound.player.play("volume_changed.ogg", False)
|
||||||
|
if hasattr(self.parent, "audioStream"):
|
||||||
|
self.parent.audioStream.stream.volume = config.main["sound"]["volume"]
|
||||||
|
elif event == "clear_list" and self.list.get_count() > 0:
|
||||||
|
dlg = wx.MessageDialog(self, _(u"Do you really want to empty this buffer? It's items will be removed from the list"), _(u"Empty buffer"), wx.ICON_QUESTION|wx.YES_NO)
|
||||||
|
if dlg.ShowModal() == wx.ID_YES:
|
||||||
|
self.trends = []
|
||||||
|
self.list.clear()
|
||||||
|
try:
|
||||||
|
ev.Skip()
|
||||||
|
except:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def set_list_position(self):
|
||||||
|
if config.main["general"]["reverse_timelines"] == False:
|
||||||
|
self.list.select_item(len(self.trends)-1)
|
||||||
|
else:
|
||||||
|
self.list.select_item(0)
|
||||||
|
|
||||||
|
def showMenu(self, ev):
|
||||||
|
if self.list.get_count() == 0: return
|
||||||
|
self.PopupMenu(menus.trendsPanelMenu(self), ev.GetPosition())
|
||||||
|
|
||||||
|
def showMenuByKey(self, ev):
|
||||||
|
if self.list.get_count() == 0: return
|
||||||
|
if ev.GetKeyCode() == wx.WXK_WINDOWS_MENU:
|
||||||
|
self.PopupMenu(menus.trendsPanelMenu(self), self.list.list.GetPosition())
|
||||||
|
@ -1 +1 @@
|
|||||||
import message, urlList, follow, utils, show_user, update_profile, configuration, lists, search
|
import message, urlList, follow, utils, show_user, update_profile, configuration, lists, search, trending
|
@ -19,24 +19,34 @@
|
|||||||
import wx
|
import wx
|
||||||
|
|
||||||
class trendingTopicsDialog(wx.Dialog):
|
class trendingTopicsDialog(wx.Dialog):
|
||||||
def __init__(self):
|
def __init__(self, information):
|
||||||
super(searchDialog, self).__init__(None, -1)
|
super(trendingTopicsDialog, self).__init__(None, -1)
|
||||||
|
self.countries = {}
|
||||||
|
self.cities = {}
|
||||||
|
self.information = information
|
||||||
|
self.split_information()
|
||||||
panel = wx.Panel(self)
|
panel = wx.Panel(self)
|
||||||
sizer = wx.BoxSizer(wx.VERTICAL)
|
sizer = wx.BoxSizer(wx.VERTICAL)
|
||||||
self.SetTitle(_(u"Search on Twitter"))
|
self.SetTitle(_(u"View trending topics"))
|
||||||
label = wx.StaticText(panel, -1, _(u"Search"))
|
label = wx.StaticText(panel, -1, _(u"Trending topics by"))
|
||||||
self.term = wx.TextCtrl(panel, -1,)
|
|
||||||
dc = wx.WindowDC(self.term)
|
|
||||||
dc.SetFont(self.term.GetFont())
|
|
||||||
self.term.SetSize(dc.GetTextExtent("0"*40))
|
|
||||||
sizer.Add(label, 0, wx.ALL, 5)
|
sizer.Add(label, 0, wx.ALL, 5)
|
||||||
sizer.Add(self.term, 0, wx.ALL, 5)
|
self.country = wx.RadioButton(panel, -1, _(u"Country"), style=wx.RB_GROUP)
|
||||||
self.tweets = wx.RadioButton(panel, -1, _(u"Tweets"), style=wx.RB_GROUP)
|
self.city = wx.RadioButton(panel, -1, _(u"City"))
|
||||||
self.users = wx.RadioButton(panel, -1, _(u"Users"))
|
self.Bind(wx.EVT_RADIOBUTTON, self.get_places, self.country)
|
||||||
|
self.Bind(wx.EVT_RADIOBUTTON, self.get_places, self.city)
|
||||||
|
|
||||||
radioSizer = wx.BoxSizer(wx.HORIZONTAL)
|
radioSizer = wx.BoxSizer(wx.HORIZONTAL)
|
||||||
radioSizer.Add(self.tweets, 0, wx.ALL, 5)
|
radioSizer.Add(label, 0, wx.ALL, 5)
|
||||||
radioSizer.Add(self.users, 0, wx.ALL, 5)
|
radioSizer.Add(self.country, 0, wx.ALL, 5)
|
||||||
|
radioSizer.Add(self.city, 0, wx.ALL, 5)
|
||||||
sizer.Add(radioSizer, 0, wx.ALL, 5)
|
sizer.Add(radioSizer, 0, wx.ALL, 5)
|
||||||
|
label = wx.StaticText(panel, -1, _(u"Location"))
|
||||||
|
self.location = wx.ListBox(panel, -1, choices=[], style=wx.CB_READONLY)
|
||||||
|
self.get_places()
|
||||||
|
locationBox = wx.BoxSizer(wx.HORIZONTAL)
|
||||||
|
locationBox.Add(label, 0, wx.ALL, 5)
|
||||||
|
locationBox.Add(self.location, 0, wx.ALL, 5)
|
||||||
|
sizer.Add(locationBox, 0, wx.ALL, 5)
|
||||||
ok = wx.Button(panel, wx.ID_OK, _(u"OK"))
|
ok = wx.Button(panel, wx.ID_OK, _(u"OK"))
|
||||||
ok.SetDefault()
|
ok.SetDefault()
|
||||||
cancel = wx.Button(panel, wx.ID_CANCEL, _(u"Close"))
|
cancel = wx.Button(panel, wx.ID_CANCEL, _(u"Close"))
|
||||||
@ -46,3 +56,23 @@ class trendingTopicsDialog(wx.Dialog):
|
|||||||
sizer.Add(btnsizer, 0, wx.ALL, 5)
|
sizer.Add(btnsizer, 0, wx.ALL, 5)
|
||||||
panel.SetSizer(sizer)
|
panel.SetSizer(sizer)
|
||||||
self.SetClientSize(sizer.CalcMin())
|
self.SetClientSize(sizer.CalcMin())
|
||||||
|
|
||||||
|
def split_information(self):
|
||||||
|
for i in self.information:
|
||||||
|
if i["placeType"]["name"] == "Country":
|
||||||
|
self.countries[i["name"]] = i["woeid"]
|
||||||
|
else:
|
||||||
|
self.cities[i["name"]] = i["woeid"]
|
||||||
|
|
||||||
|
def get_places(self, event=None):
|
||||||
|
values = []
|
||||||
|
if self.country.GetValue() == True:
|
||||||
|
for i in self.information:
|
||||||
|
if i["placeType"]["name"] == "Country":
|
||||||
|
values.append(i["name"])
|
||||||
|
elif self.city.GetValue() == True:
|
||||||
|
for i in self.information:
|
||||||
|
if i["placeType"]["name"] != "Country":
|
||||||
|
values.append(i["name"])
|
||||||
|
self.location.Set(values)
|
||||||
|
|
@ -34,6 +34,7 @@ import urllib2
|
|||||||
import sysTrayIcon
|
import sysTrayIcon
|
||||||
import switchModule
|
import switchModule
|
||||||
import languageHandler
|
import languageHandler
|
||||||
|
from extra.autocompletionUsers import settings as autocompletionUsersSettings
|
||||||
import pygeocoder
|
import pygeocoder
|
||||||
from pygeolib import GeocoderError
|
from pygeolib import GeocoderError
|
||||||
from sessionmanager import manager
|
from sessionmanager import manager
|
||||||
@ -226,7 +227,7 @@ class mainFrame(wx.Frame):
|
|||||||
try:
|
try:
|
||||||
updater.update_manager.check_for_update()
|
updater.update_manager.check_for_update()
|
||||||
except:
|
except:
|
||||||
pass
|
wx.MessageDialog(self, _(u"An error occurred while looking for an update. It may be due to any problem either on our server or on your DNS servers. Please, try again later."), _(u"Error!"), wx.OK|wx.ICON_ERROR).ShowModal()
|
||||||
self.SetMenuBar(self.makeMenus())
|
self.SetMenuBar(self.makeMenus())
|
||||||
self.setup_twitter(panel)
|
self.setup_twitter(panel)
|
||||||
|
|
||||||
@ -241,7 +242,7 @@ class mainFrame(wx.Frame):
|
|||||||
# Gets the tabs for home, mentions, send and direct messages.
|
# Gets the tabs for home, mentions, send and direct messages.
|
||||||
log.debug("Creating buffers...")
|
log.debug("Creating buffers...")
|
||||||
self.db.settings["buffers"] = []
|
self.db.settings["buffers"] = []
|
||||||
account = buffers.accountPanel(self.nb)
|
account = buffers.accountPanel(self.nb, self.db.settings["user_name"])
|
||||||
self.nb.AddPage(account, self.db.settings["user_name"])
|
self.nb.AddPage(account, self.db.settings["user_name"])
|
||||||
self.db.settings["buffers"].append(self.db.settings["user_name"])
|
self.db.settings["buffers"].append(self.db.settings["user_name"])
|
||||||
account_index = self.db.settings["buffers"].index(self.db.settings["user_name"])
|
account_index = self.db.settings["buffers"].index(self.db.settings["user_name"])
|
||||||
@ -355,6 +356,7 @@ class mainFrame(wx.Frame):
|
|||||||
self.check_streams.start()
|
self.check_streams.start()
|
||||||
# If all it's done, then play a nice sound saying that all it's OK.
|
# If all it's done, then play a nice sound saying that all it's OK.
|
||||||
sound.player.play("ready.ogg")
|
sound.player.play("ready.ogg")
|
||||||
|
autocompletionUsersSettings.execute_at_startup(window=self)
|
||||||
|
|
||||||
def remove_list(self, id):
|
def remove_list(self, id):
|
||||||
for i in range(0, self.nb.GetPageCount()):
|
for i in range(0, self.nb.GetPageCount()):
|
||||||
@ -1016,6 +1018,21 @@ class mainFrame(wx.Frame):
|
|||||||
except KeyError:
|
except KeyError:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
def get_trending_topics(self, event=None):
|
||||||
|
info = self.twitter.twitter.get_available_trends()
|
||||||
|
trendingDialog = dialogs.trending.trendingTopicsDialog(info)
|
||||||
|
if trendingDialog.ShowModal() == wx.ID_OK:
|
||||||
|
if trendingDialog.country.GetValue() == True:
|
||||||
|
woeid = trendingDialog.countries[trendingDialog.location.GetStringSelection()]
|
||||||
|
elif trendingDialog.city.GetValue() == True:
|
||||||
|
woeid = trendingDialog.cities[trendingDialog.location.GetStringSelection()]
|
||||||
|
buff = buffers.trendsPanel(self.nb, self, "%s_tt" % (woeid,), argumento=woeid, sound="tweet_timeline.ogg")
|
||||||
|
self.nb.InsertSubPage(self.db.settings["buffers"].index(self.db.settings["user_name"]), buff, _(u"Trending topics for %s") % (trendingDialog.location.GetStringSelection(),))
|
||||||
|
timer = RepeatingTimer(180, buff.start_streams)
|
||||||
|
timer.start()
|
||||||
|
num = buff.start_streams()
|
||||||
|
buff.put_items(num)
|
||||||
|
|
||||||
### Close App
|
### Close App
|
||||||
def Destroy(self):
|
def Destroy(self):
|
||||||
self.sysTray.Destroy()
|
self.sysTray.Destroy()
|
||||||
|
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@ -5,7 +5,7 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: PACKAGE VERSION\n"
|
"Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"POT-Creation-Date: 2014-11-08 16:42+Hora estándar central (México)\n"
|
"POT-Creation-Date: 2014-12-05 11:32+Hora estándar central (México)\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
@ -15,8 +15,8 @@ msgstr ""
|
|||||||
"Generated-By: pygettext.py 1.5\n"
|
"Generated-By: pygettext.py 1.5\n"
|
||||||
|
|
||||||
|
|
||||||
#: ../src\extra\AudioUploader\gui.py:31 ../src\gui\dialogs\message.py:173
|
#: ../src\extra\AudioUploader\gui.py:31 ../src\gui\dialogs\message.py:174
|
||||||
#: ../src\gui\dialogs\message.py:261
|
#: ../src\gui\dialogs\message.py:271
|
||||||
msgid "Attach audio"
|
msgid "Attach audio"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -70,13 +70,13 @@ msgstr ""
|
|||||||
msgid "Stopped"
|
msgid "Stopped"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\extra\AudioUploader\gui.py:129 ../src\gui\dialogs\message.py:222
|
#: ../src\extra\AudioUploader\gui.py:129 ../src\gui\dialogs\message.py:232
|
||||||
#: ../src\gui\dialogs\update_profile.py:87
|
#: ../src\gui\dialogs\update_profile.py:87
|
||||||
msgid "Discarded"
|
msgid "Discarded"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\extra\AudioUploader\gui.py:139 ../src\gui\buffers\base.py:339
|
#: ../src\extra\AudioUploader\gui.py:139 ../src\gui\buffers\base.py:356
|
||||||
#: ../src\gui\buffers\base.py:351
|
#: ../src\gui\buffers\base.py:368
|
||||||
msgid "Playing..."
|
msgid "Playing..."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -297,8 +297,45 @@ msgstr ""
|
|||||||
msgid "The spelling review has finished."
|
msgid "The spelling review has finished."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\extra\translator\gui.py:24 ../src\gui\dialogs\message.py:181
|
#: ../src\extra\autocompletionUsers\completion.py:18
|
||||||
#: ../src\gui\dialogs\message.py:269 ../src\gui\dialogs\message.py:355
|
msgid "You have to start writing"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\extra\autocompletionUsers\completion.py:29
|
||||||
|
msgid "There are not results in your users database"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\extra\autocompletionUsers\completion.py:31
|
||||||
|
msgid "Autocompletion only works for users."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\extra\autocompletionUsers\settings.py:22
|
||||||
|
msgid "Updating database... You can close this window now. A message will tell you when the process finishes."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\extra\autocompletionUsers\wx_settings.py:6
|
||||||
|
msgid "Autocomplete users\342\200\231 settings"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\extra\autocompletionUsers\wx_settings.py:9
|
||||||
|
msgid "Add users from followers buffer"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\extra\autocompletionUsers\wx_settings.py:10
|
||||||
|
msgid "Add users from friends buffer"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\extra\autocompletionUsers\wx_settings.py:23
|
||||||
|
msgid "Done"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\extra\autocompletionUsers\wx_settings.py:23
|
||||||
|
msgid "TWBlue's database of users has been updated."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\extra\translator\gui.py:24 ../src\gui\dialogs\message.py:182
|
||||||
|
#: ../src\gui\dialogs\message.py:279 ../src\gui\dialogs\message.py:383
|
||||||
|
#: ../src\gui\dialogs\message.py:470
|
||||||
msgid "Translate message"
|
msgid "Translate message"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -678,131 +715,134 @@ msgstr ""
|
|||||||
msgid "autodetect"
|
msgid "autodetect"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:55
|
#: ../src\gui\buffers\base.py:58
|
||||||
msgid "Client"
|
msgid "Client"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:55
|
#: ../src\gui\buffers\base.py:58
|
||||||
msgid "Text"
|
msgid "Text"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:55 ../src\gui\buffers\events.py:61
|
#: ../src\gui\buffers\base.py:58 ../src\gui\buffers\events.py:64
|
||||||
msgid "Date"
|
msgid "Date"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:55 ../src\gui\buffers\people.py:41
|
#: ../src\gui\buffers\base.py:58 ../src\gui\buffers\people.py:44
|
||||||
#: ../src\gui\buffers\user_searches.py:31 ../src\gui\dialogs\utils.py:36
|
#: ../src\gui\buffers\user_searches.py:31 ../src\gui\dialogs\utils.py:36
|
||||||
msgid "User"
|
msgid "User"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:80 ../src\gui\buffers\base.py:228
|
#: ../src\gui\buffers\base.py:83 ../src\gui\buffers\base.py:233
|
||||||
#: ../src\gui\buffers\events.py:62 ../src\gui\buffers\events.py:78
|
#: ../src\gui\buffers\events.py:65 ../src\gui\buffers\events.py:81
|
||||||
#: ../src\gui\dialogs\message.py:337
|
#: ../src\gui\buffers\trends.py:64 ../src\gui\buffers\trends.py:114
|
||||||
|
#: ../src\gui\buffers\trends.py:126 ../src\gui\dialogs\message.py:347
|
||||||
msgid "Tweet"
|
msgid "Tweet"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:82 ../src\gui\buffers\base.py:240
|
#: ../src\gui\buffers\base.py:85 ../src\gui\buffers\base.py:245
|
||||||
#: ../src\gui\buffers\base.py:243
|
#: ../src\gui\buffers\base.py:248
|
||||||
msgid "Retweet"
|
msgid "Retweet"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:84 ../src\gui\buffers\base.py:259
|
#: ../src\gui\buffers\base.py:87 ../src\gui\buffers\base.py:264
|
||||||
msgid "Reply"
|
msgid "Reply"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:86
|
#: ../src\gui\buffers\base.py:89
|
||||||
msgid "Direct message"
|
msgid "Direct message"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:100
|
#: ../src\gui\buffers\base.py:103
|
||||||
msgid "Do you really want to delete this timeline?"
|
msgid "Do you really want to delete this timeline?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:100 ../src\gui\buffers\favourites.py:41
|
#: ../src\gui\buffers\base.py:103 ../src\gui\buffers\favourites.py:41
|
||||||
#: ../src\gui\buffers\lists.py:46 ../src\gui\buffers\trends.py:41
|
#: ../src\gui\buffers\lists.py:46 ../src\gui\buffers\trends.py:77
|
||||||
#: ../src\gui\buffers\tweet_searches.py:45
|
#: ../src\gui\buffers\tweet_searches.py:45
|
||||||
#: ../src\gui\buffers\user_searches.py:56
|
#: ../src\gui\buffers\user_searches.py:56
|
||||||
msgid "Attention"
|
msgid "Attention"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:112
|
#: ../src\gui\buffers\base.py:115
|
||||||
msgid "This buffer is not a timeline; it can't be deleted."
|
msgid "This buffer is not a timeline; it can't be deleted."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:196 ../src\gui\buffers\people.py:114
|
#: ../src\gui\buffers\base.py:201 ../src\gui\buffers\people.py:117
|
||||||
msgid "%s items retrieved"
|
msgid "%s items retrieved"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:220 ../src\gui\buffers\dm.py:44
|
#: ../src\gui\buffers\base.py:225 ../src\gui\buffers\dm.py:46
|
||||||
#: ../src\gui\buffers\people.py:56
|
#: ../src\gui\buffers\people.py:59
|
||||||
msgid "Direct message to %s"
|
msgid "Direct message to %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:220 ../src\gui\buffers\dm.py:44
|
#: ../src\gui\buffers\base.py:225 ../src\gui\buffers\dm.py:46
|
||||||
#: ../src\gui\buffers\people.py:56
|
#: ../src\gui\buffers\people.py:59
|
||||||
msgid "New direct message"
|
msgid "New direct message"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:228 ../src\gui\buffers\events.py:78
|
#: ../src\gui\buffers\base.py:233 ../src\gui\buffers\events.py:81
|
||||||
|
#: ../src\gui\buffers\trends.py:114 ../src\gui\buffers\trends.py:126
|
||||||
msgid "Write the tweet here"
|
msgid "Write the tweet here"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:240
|
#: ../src\gui\buffers\base.py:245
|
||||||
msgid "Would you like to add a comment to this tweet?"
|
msgid "Would you like to add a comment to this tweet?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:243
|
#: ../src\gui\buffers\base.py:248
|
||||||
msgid "Add your comment to the tweet"
|
msgid "Add your comment to the tweet"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:259
|
#: ../src\gui\buffers\base.py:264
|
||||||
msgid "Reply to %s"
|
msgid "Reply to %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:304
|
#: ../src\gui\buffers\base.py:319
|
||||||
msgid "Opening URL..."
|
msgid "Opening URL..."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:321 ../src\gui\buffers\events.py:122
|
#: ../src\gui\buffers\base.py:338 ../src\gui\buffers\events.py:125
|
||||||
msgid "Do you really want to empty this buffer? It's tweets will be removed from the list but not from Twitter"
|
msgid "Do you really want to empty this buffer? It's tweets will be removed from the list but not from Twitter"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:321 ../src\gui\buffers\events.py:122
|
#: ../src\gui\buffers\base.py:338 ../src\gui\buffers\events.py:125
|
||||||
|
#: ../src\gui\buffers\trends.py:156
|
||||||
msgid "Empty buffer"
|
msgid "Empty buffer"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:326 ../src\gui\buffers\events.py:126
|
#: ../src\gui\buffers\base.py:343 ../src\gui\buffers\events.py:129
|
||||||
msgid "Do you really want to delete this message?"
|
msgid "Do you really want to delete this message?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:326 ../src\gui\buffers\events.py:126
|
#: ../src\gui\buffers\base.py:343 ../src\gui\buffers\events.py:129
|
||||||
#: ../src\gui\dialogs\lists.py:107
|
#: ../src\gui\dialogs\lists.py:107
|
||||||
msgid "Delete"
|
msgid "Delete"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:346 ../src\gui\buffers\base.py:357
|
#: ../src\gui\buffers\base.py:363 ../src\gui\buffers\base.py:374
|
||||||
msgid "Unable to play audio."
|
msgid "Unable to play audio."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\base.py:348
|
#: ../src\gui\buffers\base.py:365
|
||||||
msgid "Audio stopped."
|
msgid "Audio stopped."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\events.py:35 ../src\gui\buffers\panels.py:37
|
#: ../src\gui\buffers\events.py:36 ../src\gui\buffers\panels.py:33
|
||||||
#: ../src\gui\buffers\tweet_searches.py:58
|
#: ../src\gui\buffers\trends.py:93 ../src\gui\buffers\tweet_searches.py:58
|
||||||
#: ../src\gui\buffers\user_searches.py:64
|
#: ../src\gui\buffers\user_searches.py:64
|
||||||
msgid "This action is not supported for this buffer"
|
msgid "This action is not supported for this buffer"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\events.py:44
|
#: ../src\gui\buffers\events.py:47
|
||||||
msgid "Empty"
|
msgid "Empty"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\events.py:61
|
#: ../src\gui\buffers\events.py:64
|
||||||
msgid "Event"
|
msgid "Event"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\events.py:64
|
#: ../src\gui\buffers\events.py:67
|
||||||
msgid "Remove event"
|
msgid "Remove event"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -814,222 +854,313 @@ msgstr ""
|
|||||||
msgid "Do you really want to delete this list?"
|
msgid "Do you really want to delete this list?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\panels.py:27
|
#: ../src\gui\buffers\menus.py:8
|
||||||
|
msgid "&Retweet"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\menus.py:11 ../src\gui\buffers\menus.py:43
|
||||||
|
msgid "Re&ply"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\menus.py:14
|
||||||
|
msgid "Add to &favourites"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\menus.py:17
|
||||||
|
msgid "Remove from favo&urites"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\menus.py:20 ../src\gui\buffers\menus.py:46
|
||||||
|
#: ../src\gui\buffers\menus.py:69
|
||||||
|
msgid "&Open URL"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\menus.py:23 ../src\gui\buffers\menus.py:49
|
||||||
|
#: ../src\gui\buffers\menus.py:72
|
||||||
|
msgid "&Play audio"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\menus.py:26 ../src\gui\buffers\menus.py:75
|
||||||
|
msgid "&Show tweet"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\menus.py:29 ../src\gui\buffers\menus.py:55
|
||||||
|
#: ../src\gui\buffers\menus.py:78 ../src\gui\buffers\menus.py:92
|
||||||
|
#: ../src\gui\buffers\menus.py:115
|
||||||
|
msgid "&Copy to clipboard"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\menus.py:32 ../src\gui\buffers\menus.py:58
|
||||||
|
#: ../src\gui\buffers\menus.py:81 ../src\gui\buffers\menus.py:95
|
||||||
|
msgid "&Delete"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\menus.py:35 ../src\gui\buffers\menus.py:61
|
||||||
|
#: ../src\gui\buffers\menus.py:118
|
||||||
|
msgid "&User actions..."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\menus.py:52
|
||||||
|
msgid "&Show direct message"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\menus.py:89
|
||||||
|
msgid "&Show event"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\menus.py:103
|
||||||
|
msgid "&Mention"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\menus.py:106
|
||||||
|
msgid "&View lists"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\menus.py:109
|
||||||
|
msgid "Show user &profile"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\menus.py:112
|
||||||
|
msgid "&Show user"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\panels.py:28
|
||||||
msgid "Announce"
|
msgid "Announce"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\people.py:46 ../src\gui\buffers\people.py:64
|
#: ../src\gui\buffers\people.py:49 ../src\gui\buffers\people.py:67
|
||||||
msgid "Mention"
|
msgid "Mention"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\people.py:64
|
#: ../src\gui\buffers\people.py:67
|
||||||
msgid "Mention to %s"
|
msgid "Mention to %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\buffers\trends.py:41 ../src\gui\buffers\tweet_searches.py:45
|
#: ../src\gui\buffers\trends.py:47
|
||||||
|
msgid "Trending topic"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\trends.py:66
|
||||||
|
msgid "Tweet about this trend"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\trends.py:77
|
||||||
|
msgid "Do you really want to delete this buffer?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\trends.py:156
|
||||||
|
msgid "Do you really want to empty this buffer? It's items will be removed from the list"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\buffers\tweet_searches.py:45
|
||||||
#: ../src\gui\buffers\user_searches.py:56
|
#: ../src\gui\buffers\user_searches.py:56
|
||||||
msgid "Do you really want to delete this search term?"
|
msgid "Do you really want to delete this search term?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:39
|
#: ../src\gui\dialogs\configuration.py:40
|
||||||
msgid "Language"
|
msgid "Language"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:53
|
#: ../src\gui\dialogs\configuration.py:54
|
||||||
msgid "ask before exiting TwBlue?"
|
msgid "Set the autocomplete function"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:56
|
#: ../src\gui\dialogs\configuration.py:56
|
||||||
|
msgid "ask before exiting TwBlue?"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\dialogs\configuration.py:59
|
||||||
msgid "Relative times"
|
msgid "Relative times"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:60
|
#: ../src\gui\dialogs\configuration.py:63
|
||||||
msgid "Activate Sapi5 when any other screen reader is not being run"
|
msgid "Activate Sapi5 when any other screen reader is not being run"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:63
|
#: ../src\gui\dialogs\configuration.py:66
|
||||||
msgid "Activate the auto-start of the invisible interface"
|
msgid "Activate the auto-start of the invisible interface"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:67
|
#: ../src\gui\dialogs\configuration.py:70
|
||||||
msgid "API calls when the stream is started (One API call equals to 200 tweetts, two API calls equals 400 tweets, etc):"
|
msgid "API calls when the stream is started (One API call equals to 200 tweetts, two API calls equals 400 tweets, etc):"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:75
|
#: ../src\gui\dialogs\configuration.py:78
|
||||||
msgid "Items on each API call"
|
msgid "Items on each API call"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:82
|
#: ../src\gui\dialogs\configuration.py:85
|
||||||
msgid "Inverted buffers: The newest tweets will be shown at the beginning of the lists while the oldest at the end"
|
msgid "Inverted buffers: The newest tweets will be shown at the beginning of the lists while the oldest at the end"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:97
|
#: ../src\gui\dialogs\configuration.py:101
|
||||||
msgid "Show followers"
|
msgid "Show followers"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:100
|
#: ../src\gui\dialogs\configuration.py:104
|
||||||
msgid "Show friends"
|
msgid "Show friends"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:103
|
#: ../src\gui\dialogs\configuration.py:107
|
||||||
msgid "Show favourites"
|
msgid "Show favourites"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:106
|
#: ../src\gui\dialogs\configuration.py:110
|
||||||
msgid "Show blocked users"
|
msgid "Show blocked users"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:109
|
#: ../src\gui\dialogs\configuration.py:113
|
||||||
msgid "Show muted users"
|
msgid "Show muted users"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:112
|
#: ../src\gui\dialogs\configuration.py:116
|
||||||
msgid "Show events"
|
msgid "Show events"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:122
|
#: ../src\gui\dialogs\configuration.py:126
|
||||||
#: ../src\gui\dialogs\configuration.py:270
|
#: ../src\gui\dialogs\configuration.py:275
|
||||||
msgid "Ignored clients"
|
msgid "Ignored clients"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:128
|
#: ../src\gui\dialogs\configuration.py:132
|
||||||
msgid "Add client"
|
msgid "Add client"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:129
|
#: ../src\gui\dialogs\configuration.py:133
|
||||||
msgid "Remove client"
|
msgid "Remove client"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:140
|
#: ../src\gui\dialogs\configuration.py:144
|
||||||
msgid "Add a new ignored client"
|
msgid "Add a new ignored client"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:140
|
#: ../src\gui\dialogs\configuration.py:144
|
||||||
msgid "Enter the name of the client here"
|
msgid "Enter the name of the client here"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:157
|
#: ../src\gui\dialogs\configuration.py:161
|
||||||
msgid "Volume"
|
msgid "Volume"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:166
|
#: ../src\gui\dialogs\configuration.py:170
|
||||||
msgid "Global mute"
|
msgid "Global mute"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:170
|
#: ../src\gui\dialogs\configuration.py:174
|
||||||
msgid "Output device"
|
msgid "Output device"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:179
|
#: ../src\gui\dialogs\configuration.py:183
|
||||||
msgid "Input device"
|
msgid "Input device"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:190
|
#: ../src\gui\dialogs\configuration.py:194
|
||||||
msgid "Sound pack"
|
msgid "Sound pack"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:203
|
#: ../src\gui\dialogs\configuration.py:207
|
||||||
msgid "If you've got a SndUp account, enter your API Key here. Whether the API Key is wrong, the App will fail to upload anything to the server. Whether there's no API Key here, then the audio files will be uploaded anonimously"
|
msgid "If you've got a SndUp account, enter your API Key here. Whether the API Key is wrong, the App will fail to upload anything to the server. Whether there's no API Key here, then the audio files will be uploaded anonimously"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:216
|
#: ../src\gui\dialogs\configuration.py:220
|
||||||
#: ../src\gui\dialogs\configuration.py:240
|
#: ../src\gui\dialogs\configuration.py:244
|
||||||
msgid "Unlink your Dropbox account"
|
msgid "Unlink your Dropbox account"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:218
|
#: ../src\gui\dialogs\configuration.py:222
|
||||||
#: ../src\gui\dialogs\configuration.py:235
|
#: ../src\gui\dialogs\configuration.py:239
|
||||||
#: ../src\gui\dialogs\configuration.py:243
|
|
||||||
#: ../src\gui\dialogs\configuration.py:247
|
#: ../src\gui\dialogs\configuration.py:247
|
||||||
#: ../src\gui\dialogs\configuration.py:254
|
#: ../src\gui\dialogs\configuration.py:251
|
||||||
|
#: ../src\gui\dialogs\configuration.py:258
|
||||||
msgid "Link your Dropbox account"
|
msgid "Link your Dropbox account"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:228
|
#: ../src\gui\dialogs\configuration.py:232
|
||||||
msgid "Authorisation"
|
msgid "Authorisation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:228
|
#: ../src\gui\dialogs\configuration.py:232
|
||||||
msgid "The authorisation request will be shown on your browser. Copy the code tat Dropbox will provide and, in the text box that will appear on TW Blue, paste it. This code is necessary to continue. You only need to do it once."
|
msgid "The authorisation request will be shown on your browser. Copy the code tat Dropbox will provide and, in the text box that will appear on TW Blue, paste it. This code is necessary to continue. You only need to do it once."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:230
|
#: ../src\gui\dialogs\configuration.py:234
|
||||||
msgid "Enter the code here."
|
msgid "Enter the code here."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:230
|
#: ../src\gui\dialogs\configuration.py:234
|
||||||
msgid "Verification code"
|
msgid "Verification code"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:242
|
#: ../src\gui\dialogs\configuration.py:246
|
||||||
msgid "Error during authorisation. Try again later."
|
msgid "Error during authorisation. Try again later."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:242
|
#: ../src\gui\dialogs\configuration.py:246
|
||||||
msgid "Error!"
|
msgid "Error!"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:261
|
#: ../src\gui\dialogs\configuration.py:265
|
||||||
msgid "TW Blue preferences"
|
msgid "TW Blue preferences"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:265
|
#: ../src\gui\dialogs\configuration.py:269
|
||||||
msgid "General"
|
msgid "General"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:268
|
#: ../src\gui\dialogs\configuration.py:273
|
||||||
msgid "Show other buffers"
|
msgid "Show other buffers"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:272
|
#: ../src\gui\dialogs\configuration.py:277
|
||||||
msgid "Sound"
|
msgid "Sound"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:274
|
#: ../src\gui\dialogs\configuration.py:279
|
||||||
msgid "Audio Services"
|
msgid "Audio Services"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:277
|
#: ../src\gui\dialogs\configuration.py:282
|
||||||
msgid "Save"
|
msgid "Save"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:280 ../src\gui\dialogs\follow.py:64
|
#: ../src\gui\dialogs\configuration.py:285 ../src\gui\dialogs\follow.py:64
|
||||||
#: ../src\gui\dialogs\message.py:186 ../src\gui\dialogs\message.py:274
|
#: ../src\gui\dialogs\message.py:189 ../src\gui\dialogs\message.py:284
|
||||||
#: ../src\gui\dialogs\message.py:357 ../src\gui\dialogs\search.py:42
|
#: ../src\gui\dialogs\message.py:385 ../src\gui\dialogs\message.py:472
|
||||||
#: ../src\gui\dialogs\show_user.py:42 ../src\gui\dialogs\trending.py:42
|
#: ../src\gui\dialogs\search.py:42 ../src\gui\dialogs\show_user.py:42
|
||||||
#: ../src\gui\dialogs\update_profile.py:56 ../src\gui\dialogs\utils.py:42
|
#: ../src\gui\dialogs\trending.py:52 ../src\gui\dialogs\update_profile.py:56
|
||||||
|
#: ../src\gui\dialogs\utils.py:42
|
||||||
msgid "Close"
|
msgid "Close"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:293
|
#: ../src\gui\dialogs\configuration.py:301
|
||||||
msgid "Followers"
|
msgid "Followers"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:307
|
#: ../src\gui\dialogs\configuration.py:315
|
||||||
msgid "friends"
|
msgid "friends"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:321
|
#: ../src\gui\dialogs\configuration.py:329
|
||||||
msgid "Favorites"
|
msgid "Favorites"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:335
|
#: ../src\gui\dialogs\configuration.py:343
|
||||||
msgid "Events"
|
msgid "Events"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:346
|
#: ../src\gui\dialogs\configuration.py:354
|
||||||
msgid "Blocked users"
|
msgid "Blocked users"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:360
|
#: ../src\gui\dialogs\configuration.py:368
|
||||||
msgid "Muted users"
|
msgid "Muted users"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:420
|
#: ../src\gui\dialogs\configuration.py:428
|
||||||
msgid "Restart TW Blue"
|
msgid "Restart TW Blue"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\configuration.py:420
|
#: ../src\gui\dialogs\configuration.py:428
|
||||||
msgid "The application requires to be restarted to save these changes. Press OK to do it now."
|
msgid "The application requires to be restarted to save these changes. Press OK to do it now."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -1066,7 +1197,7 @@ msgid "Report as spam"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\follow.py:61 ../src\gui\dialogs\search.py:40
|
#: ../src\gui\dialogs\follow.py:61 ../src\gui\dialogs\search.py:40
|
||||||
#: ../src\gui\dialogs\trending.py:40 ../src\gui\dialogs\utils.py:39
|
#: ../src\gui\dialogs\trending.py:50 ../src\gui\dialogs\utils.py:39
|
||||||
msgid "OK"
|
msgid "OK"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -1178,105 +1309,128 @@ msgstr ""
|
|||||||
msgid "Select a list to remove the user"
|
msgid "Select a list to remove the user"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:43 ../src\gui\dialogs\message.py:146
|
#: ../src\gui\dialogs\message.py:44 ../src\gui\dialogs\message.py:147
|
||||||
msgid "%s - %s of 140 characters"
|
msgid "%s - %s of 140 characters"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:77
|
#: ../src\gui\dialogs\message.py:78
|
||||||
msgid "Attaching..."
|
msgid "Attaching..."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:78
|
#: ../src\gui\dialogs\message.py:79
|
||||||
msgid "Uploading..."
|
msgid "Uploading..."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:100
|
#: ../src\gui\dialogs\message.py:101
|
||||||
msgid "Unable to upload the audio"
|
msgid "Unable to upload the audio"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:114 ../src\gui\dialogs\message.py:400
|
#: ../src\gui\dialogs\message.py:115 ../src\gui\dialogs\message.py:428
|
||||||
|
#: ../src\gui\dialogs\message.py:513
|
||||||
msgid "Translated"
|
msgid "Translated"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:126
|
#: ../src\gui\dialogs\message.py:127
|
||||||
msgid "There's no URL to be shortened"
|
msgid "There's no URL to be shortened"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:129
|
#: ../src\gui\dialogs\message.py:130
|
||||||
msgid "URL shortened"
|
msgid "URL shortened"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:137 ../src\gui\dialogs\message.py:412
|
#: ../src\gui\dialogs\message.py:138 ../src\gui\dialogs\message.py:440
|
||||||
|
#: ../src\gui\dialogs\message.py:525
|
||||||
msgid "There's no URL to be expanded"
|
msgid "There's no URL to be expanded"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:140 ../src\gui\dialogs\message.py:415
|
#: ../src\gui\dialogs\message.py:141 ../src\gui\dialogs\message.py:443
|
||||||
|
#: ../src\gui\dialogs\message.py:528
|
||||||
msgid "URL expanded"
|
msgid "URL expanded"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:168 ../src\gui\dialogs\message.py:223
|
#: ../src\gui\dialogs\message.py:169 ../src\gui\dialogs\message.py:233
|
||||||
#: ../src\gui\dialogs\update_profile.py:51
|
#: ../src\gui\dialogs\update_profile.py:51
|
||||||
#: ../src\gui\dialogs\update_profile.py:88
|
#: ../src\gui\dialogs\update_profile.py:88
|
||||||
msgid "Upload a picture"
|
msgid "Upload a picture"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:171 ../src\gui\dialogs\message.py:259
|
#: ../src\gui\dialogs\message.py:172 ../src\gui\dialogs\message.py:269
|
||||||
#: ../src\gui\dialogs\message.py:350
|
#: ../src\gui\dialogs\message.py:378 ../src\gui\dialogs\message.py:465
|
||||||
msgid "Spelling correction"
|
msgid "Spelling correction"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:175 ../src\gui\dialogs\message.py:263
|
#: ../src\gui\dialogs\message.py:176 ../src\gui\dialogs\message.py:273
|
||||||
msgid "Shorten URL"
|
msgid "Shorten URL"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:177 ../src\gui\dialogs\message.py:265
|
#: ../src\gui\dialogs\message.py:178 ../src\gui\dialogs\message.py:275
|
||||||
#: ../src\gui\dialogs\message.py:352
|
#: ../src\gui\dialogs\message.py:380 ../src\gui\dialogs\message.py:467
|
||||||
msgid "Expand URL"
|
msgid "Expand URL"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:183 ../src\gui\dialogs\message.py:271
|
#: ../src\gui\dialogs\message.py:184 ../src\gui\dialogs\message.py:281
|
||||||
msgid "Send"
|
msgid "Send"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:219 ../src\gui\dialogs\message.py:230
|
#: ../src\gui\dialogs\message.py:187
|
||||||
|
msgid "&Autocomplete users"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\dialogs\message.py:229 ../src\gui\dialogs\message.py:240
|
||||||
#: ../src\gui\dialogs\update_profile.py:84
|
#: ../src\gui\dialogs\update_profile.py:84
|
||||||
#: ../src\gui\dialogs\update_profile.py:95
|
#: ../src\gui\dialogs\update_profile.py:95
|
||||||
msgid "Discard image"
|
msgid "Discard image"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:225 ../src\gui\dialogs\update_profile.py:90
|
#: ../src\gui\dialogs\message.py:235 ../src\gui\dialogs\update_profile.py:90
|
||||||
msgid "Image files (*.png, *.jpg, *.gif)|*.png; *.jpg; *.gif"
|
msgid "Image files (*.png, *.jpg, *.gif)|*.png; *.jpg; *.gif"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:225 ../src\gui\dialogs\update_profile.py:90
|
#: ../src\gui\dialogs\message.py:235 ../src\gui\dialogs\update_profile.py:90
|
||||||
msgid "Select the picture to be uploaded"
|
msgid "Select the picture to be uploaded"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:253
|
#: ../src\gui\dialogs\message.py:263
|
||||||
msgid "Recipient"
|
msgid "Recipient"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:308
|
#: ../src\gui\dialogs\message.py:318
|
||||||
msgid "Mention to all"
|
msgid "Mention &to all"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\message.py:335
|
#: ../src\gui\dialogs\message.py:345
|
||||||
msgid "Tweet - %i characters "
|
msgid "Tweet - %i characters "
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\search.py:26 ../src\gui\dialogs\trending.py:26
|
#: ../src\gui\dialogs\message.py:363
|
||||||
|
msgid "Retweets: "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\dialogs\message.py:368
|
||||||
|
msgid "Favourites: "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\dialogs\message.py:451
|
||||||
|
msgid "View"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\dialogs\message.py:453
|
||||||
|
msgid "Item"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\dialogs\search.py:26
|
||||||
msgid "Search on Twitter"
|
msgid "Search on Twitter"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\search.py:27 ../src\gui\dialogs\trending.py:27
|
#: ../src\gui\dialogs\search.py:27
|
||||||
msgid "Search"
|
msgid "Search"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\search.py:34 ../src\gui\dialogs\trending.py:34
|
#: ../src\gui\dialogs\search.py:34
|
||||||
msgid "Tweets"
|
msgid "Tweets"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\search.py:35 ../src\gui\dialogs\trending.py:35
|
#: ../src\gui\dialogs\search.py:35
|
||||||
msgid "Users"
|
msgid "Users"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -1349,6 +1503,26 @@ msgstr ""
|
|||||||
msgid "Favourites: %s"
|
msgid "Favourites: %s"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\dialogs\trending.py:30
|
||||||
|
msgid "View trending topics"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\dialogs\trending.py:31
|
||||||
|
msgid "Trending topics by"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\dialogs\trending.py:33
|
||||||
|
msgid "Country"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\dialogs\trending.py:34
|
||||||
|
msgid "City"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: ../src\gui\dialogs\trending.py:43 ../src\gui\dialogs\update_profile.py:35
|
||||||
|
msgid "Location"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\update_profile.py:27
|
#: ../src\gui\dialogs\update_profile.py:27
|
||||||
msgid "Update your profile"
|
msgid "Update your profile"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -1357,10 +1531,6 @@ msgstr ""
|
|||||||
msgid "Name (20 characters maximum)"
|
msgid "Name (20 characters maximum)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: ../src\gui\dialogs\update_profile.py:35
|
|
||||||
msgid "Location"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: ../src\gui\dialogs\update_profile.py:40
|
#: ../src\gui\dialogs\update_profile.py:40
|
||||||
msgid "Website"
|
msgid "Website"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
743
tools/twblue.pot
743
tools/twblue.pot
File diff suppressed because it is too large
Load Diff
@ -1 +1 @@
|
|||||||
Subproject commit 739034e207994b3a05e59e6d7836e68a0a1b6983
|
Subproject commit ddcbbd21d35995a4877df5b7cd03db12b31bee84
|
Loading…
Reference in New Issue
Block a user