15
15
# along with this program; if not, write to the Free Software
16
16
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
26
class RevisionSelectionBox(gtk.HBox):
18
from gi.repository import Gtk
20
class RevisionSelectionBox(Gtk.HBox):
27
22
def __init__(self, branch):
28
23
super(RevisionSelectionBox, self).__init__()
29
24
self._branch = branch
30
self._entry_revid = gtk.Entry()
31
self._button_revid = gtk.Button('')
32
self._button_revid.set_image(gtk.image_new_from_stock(
33
gtk.STOCK_OPEN, gtk.ICON_SIZE_BUTTON))
25
self._entry_revid = Gtk.Entry()
26
self._button_revid = Gtk.Button('')
27
self._button_revid.set_image(Gtk.Image.new_from_stock(
28
Gtk.STOCK_OPEN, Gtk.IconSize.BUTTON))
34
29
self.pack_start(self._entry_revid, True, True)
35
self.pack_start(self._button_revid, False, False)
30
self.pack_start(self._button_revid, False, False)
37
32
self._button_revid.connect('clicked', self._on_revid_clicked)
39
34
def _on_revid_clicked(self, widget):
40
35
""" Browse for revision button clicked handler. """
41
36
from revbrowser import RevisionBrowser
43
38
# FIXME: Should specific parent window here - how to get to it?
45
40
revb = RevisionBrowser(self._branch)
46
41
response = revb.run()
47
if response != gtk.RESPONSE_NONE:
42
if response != Gtk.ResponseType.NONE:
50
if response == gtk.RESPONSE_OK:
45
if response == Gtk.ResponseType.OK:
51
46
if revb.selected_revno is not None:
52
47
self._entry_revid.set_text(revb.selected_revid)
56
51
def get_revision_id(self):