Пример #1
0
    def __init__(self, mainwin, label=''):
        gtk.VBox.__init__(self, False)

        self.mainwin = mainwin
        self.input_topics = gtk.Entry()
        self.clearbtn = gtk.Button()
        self.clearbtn.set_image(self.mainwin.load_image('clear.png'))
        self.clearbtn.set_tooltip_text(_('Clear results'))
        try:
            #self.input_topics.set_property("primary-icon-stock",
            #                               gtk.STOCK_FIND)
            self.input_topics.set_property("secondary-icon-stock",
                                           gtk.STOCK_FIND)
            self.input_topics.connect("icon-press", self.__on_icon_press)
        except:
            pass

        inputbox = gtk.HBox(False)
        inputbox.pack_start(self.input_topics, True, True)
        inputbox.pack_start(self.clearbtn, False, False)

        self.topics = TweetList(mainwin, label)
        self.caption = label

        self.pack_start(inputbox, False, False)
        self.pack_start(self.topics, True, True)
        self.show_all()

        self.clearbtn.connect('clicked', self.__clear)
        self.input_topics.connect('activate', self.__search_topic)
        self.input_topics.grab_focus()
Пример #2
0
class SearchTweets(gtk.VBox):
    def __init__(self, mainwin, label=""):
        gtk.VBox.__init__(self, False)

        self.mainwin = mainwin
        self.input_topics = gtk.Entry()
        self.clearbtn = gtk.Button()
        self.clearbtn.set_image(self.mainwin.load_image("clear.png"))
        self.clearbtn.set_tooltip_text(_("Clear results"))
        try:
            # self.input_topics.set_property("primary-icon-stock",
            #                               gtk.STOCK_FIND)
            self.input_topics.set_property("secondary-icon-stock", gtk.STOCK_FIND)
            self.input_topics.connect("icon-press", self.__on_icon_press)
        except:
            pass

        inputbox = gtk.HBox(False)
        inputbox.pack_start(self.input_topics, True, True)
        inputbox.pack_start(self.clearbtn, False, False)

        self.topics = TweetList(mainwin, label)
        self.caption = label

        self.pack_start(inputbox, False, False)
        self.pack_start(self.topics, True, True)
        self.show_all()

        self.clearbtn.connect("clicked", self.__clear)
        self.input_topics.connect("activate", self.__search_topic)
        self.input_topics.grab_focus()

    def __on_icon_press(self, widget, pos, e):
        # if pos == 0:
        #    self.__search_topic(widget)
        if pos == 1:
            # widget.set_text('')
            self.__search_topic(widget)

    def __clear(self, widget):
        self.topics.clear()
        self.input_topics.grab_focus()

    def __search_topic(self, widget):
        topic = widget.get_text()
        if topic != "":
            self.mainwin.request_search_topic(topic)
            widget.set_text("")
        else:
            widget.set_text(_("You must write something to search"))
        widget.grab_focus()

    def update_tweets(self, arr_tweets):
        self.topics.update_tweets(arr_tweets)

    def update_user_pic(self, user, pic):
        self.topics.update_user_pic(user, pic)

    def update_wrap(self, width):
        self.topics.update_wrap(width)
Пример #3
0
    def __init__(self, mainwin, mode='single'):
        Wrapper.__init__(self)

        if mainwin.extend:
            self.timeline = TweetListWebkit(mainwin, 'Timeline')
            self.replies = TweetListWebkit(mainwin, _('Mentions'))
        else:
            self.timeline = TweetList(mainwin, _('Timeline'))
            self.replies = TweetList(mainwin, _('Mentions'))
        self.direct = TweetList(mainwin, _('Directs'), 'direct')

        self._append_widget(self.timeline, WrapperAlign.left)
        self._append_widget(self.replies, WrapperAlign.middle)
        self._append_widget(self.direct, WrapperAlign.right)

        self.change_mode(mode)
Пример #4
0
    def __init__(self, mainwin, label=""):
        gtk.VBox.__init__(self, False)

        self.mainwin = mainwin
        self.input_topics = gtk.Entry()
        self.clearbtn = gtk.Button()
        self.clearbtn.set_image(self.mainwin.load_image("clear.png"))
        self.clearbtn.set_tooltip_text(_("Clear results"))
        try:
            # self.input_topics.set_property("primary-icon-stock",
            #                               gtk.STOCK_FIND)
            self.input_topics.set_property("secondary-icon-stock", gtk.STOCK_FIND)
            self.input_topics.connect("icon-press", self.__on_icon_press)
        except:
            pass

        inputbox = gtk.HBox(False)
        inputbox.pack_start(self.input_topics, True, True)
        inputbox.pack_start(self.clearbtn, False, False)

        self.topics = TweetList(mainwin, label)
        self.caption = label

        self.pack_start(inputbox, False, False)
        self.pack_start(self.topics, True, True)
        self.show_all()

        self.clearbtn.connect("clicked", self.__clear)
        self.input_topics.connect("activate", self.__search_topic)
        self.input_topics.grab_focus()
Пример #5
0
    def __init__(self, parent):
        gtk.Window.__init__(self)

        self.working = True
        self.mainwin = parent
        self.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)
        self.set_title(_('In reply to...'))
        self.set_resizable(False)
        self.set_size_request(400, 300)
        self.set_transient_for(parent)
        self.set_position(gtk.WIN_POS_CENTER_ON_PARENT)

        self.tweets = TweetList(parent, _('In reply to...'))

        top = gtk.VBox(False, 0)
        top.pack_start(self.tweets, True, True, 0)

        self.add(top)

        self.connect('delete-event', self.__unclose)
        self.connect('size-request', self.__size_request)
Пример #6
0
    def __init__(self, mainwin, mode='single'):
        Wrapper.__init__(self)

        self.favorites = TweetList(mainwin, _('Favorites'))
        self.user_form = UserForm(mainwin, _('Profile'))
        self.topics = SearchTweets(mainwin, _('Search'))

        self._append_widget(self.user_form, WrapperAlign.left)
        self._append_widget(self.favorites, WrapperAlign.middle)
        self._append_widget(self.topics, WrapperAlign.right)

        self.change_mode(mode)
Пример #7
0
 def __init__(self, parent):
     gtk.Window.__init__(self)
     
     self.working = True
     self.mainwin = parent
     self.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)
     self.set_title(_('In reply to...'))
     self.set_resizable(False)
     self.set_size_request(400, 300)
     self.set_transient_for(parent)
     self.set_position(gtk.WIN_POS_CENTER_ON_PARENT)
     
     self.tweets = TweetList(parent, _('In reply to...'))
     
     top = gtk.VBox(False, 0)
     top.pack_start(self.tweets, True, True, 0)
     
     self.add(top)
     
     self.connect('delete-event', self.__unclose)
     self.connect('size-request', self.__size_request)
Пример #8
0
class ReplyBox(gtk.Window):
    def __init__(self, parent):
        gtk.Window.__init__(self)
        
        self.working = True
        self.mainwin = parent
        self.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)
        self.set_title(_('In reply to...'))
        self.set_resizable(False)
        self.set_size_request(400, 300)
        self.set_transient_for(parent)
        self.set_position(gtk.WIN_POS_CENTER_ON_PARENT)
        
        self.tweets = TweetList(parent, _('In reply to...'))
        
        top = gtk.VBox(False, 0)
        top.pack_start(self.tweets, True, True, 0)
        
        self.add(top)
        
        self.connect('delete-event', self.__unclose)
        self.connect('size-request', self.__size_request)
    
    def __size_request(self, widget, event, data=None):
        w, h = self.get_size()
        self.tweets.update_wrap(w)
        
    def __unclose(self, widget, event=None):
        if not self.working:
            self.hide()
        return True
        
    def show(self, twt_id, user):
        self.in_reply_id = twt_id
        self.in_reply_user = user
        self.set_title(_('In reply to %s') % user)
        self.set_position(gtk.WIN_POS_CENTER_ON_PARENT)
        self.tweets.clear()
        self.tweets.start_update()
        self.show_all()
        
    def update(self, tweets):
        self.working = False
        if not tweets or (len(tweets) == 0): 
            self.tweets.stop_update(True, _('Oops... something went wrong'))
        else:
            self.tweets.stop_update()
            self.tweets.clear()
            self.tweets.update_tweets(tweets)
Пример #9
0
class ReplyBox(gtk.Window):
    def __init__(self, parent):
        gtk.Window.__init__(self)

        self.working = True
        self.mainwin = parent
        self.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)
        self.set_title(_('In reply to...'))
        self.set_resizable(False)
        self.set_size_request(400, 300)
        self.set_transient_for(parent)
        self.set_position(gtk.WIN_POS_CENTER_ON_PARENT)

        self.tweets = TweetList(parent, _('In reply to...'))

        top = gtk.VBox(False, 0)
        top.pack_start(self.tweets, True, True, 0)

        self.add(top)

        self.connect('delete-event', self.__unclose)
        self.connect('size-request', self.__size_request)

    def __size_request(self, widget, event, data=None):
        w, h = self.get_size()
        self.tweets.update_wrap(w)

    def __unclose(self, widget, event=None):
        if not self.working:
            self.hide()
        return True

    def show(self, twt_id, user):
        self.in_reply_id = twt_id
        self.in_reply_user = user
        self.set_title(_('In reply to %s') % user)
        self.set_position(gtk.WIN_POS_CENTER_ON_PARENT)
        self.tweets.clear()
        self.tweets.start_update()
        self.show_all()

    def update(self, tweets):
        self.working = False
        if not tweets or (len(tweets) == 0):
            self.tweets.stop_update(True, _('Oops... something went wrong'))
        else:
            self.tweets.stop_update()
            self.tweets.clear()
            self.tweets.update_tweets(tweets)
Пример #10
0
class SearchTweets(gtk.VBox):
    def __init__(self, mainwin, label=''):
        gtk.VBox.__init__(self, False)

        self.mainwin = mainwin
        self.input_topics = gtk.Entry()
        self.clearbtn = gtk.Button()
        self.clearbtn.set_image(self.mainwin.load_image('clear.png'))
        self.clearbtn.set_tooltip_text(_('Clear results'))
        try:
            #self.input_topics.set_property("primary-icon-stock",
            #                               gtk.STOCK_FIND)
            self.input_topics.set_property("secondary-icon-stock",
                                           gtk.STOCK_FIND)
            self.input_topics.connect("icon-press", self.__on_icon_press)
        except:
            pass

        inputbox = gtk.HBox(False)
        inputbox.pack_start(self.input_topics, True, True)
        inputbox.pack_start(self.clearbtn, False, False)

        self.topics = TweetList(mainwin, label)
        self.caption = label

        self.pack_start(inputbox, False, False)
        self.pack_start(self.topics, True, True)
        self.show_all()

        self.clearbtn.connect('clicked', self.__clear)
        self.input_topics.connect('activate', self.__search_topic)
        self.input_topics.grab_focus()

    def __on_icon_press(self, widget, pos, e):
        #if pos == 0:
        #    self.__search_topic(widget)
        if pos == 1:
            #widget.set_text('')
            self.__search_topic(widget)

    def __clear(self, widget):
        self.topics.clear()
        self.input_topics.grab_focus()

    def __search_topic(self, widget):
        topic = widget.get_text()
        if topic != '':
            self.mainwin.request_search_topic(topic)
            widget.set_text('')
        else:
            widget.set_text(_('You must write something to search'))
        widget.grab_focus()

    def update_tweets(self, arr_tweets):
        self.topics.update_tweets(arr_tweets)

    def update_user_pic(self, user, pic):
        self.topics.update_user_pic(user, pic)

    def update_wrap(self, width):
        self.topics.update_wrap(width)