29
29
import bzrlib.errors as errors
 
30
30
from bzrlib.workingtree import WorkingTree
 
32
 
from olive import gladefile
 
33
 
from dialog import error_dialog
 
 
32
from bzrlib.plugins.gtk import _i18n
 
 
33
from bzrlib.plugins.gtk.dialog import error_dialog
 
 
34
from errors import show_bzr_error
 
 
35
from guifiles import GLADEFILENAME
 
36
39
    """ Display the Move dialog and perform the needed actions. """
 
37
40
    def __init__(self, wt, wtpath, selected=[]):
 
38
41
        """ Initialize the Move dialog. """
 
39
 
        self.glade = gtk.glade.XML(gladefile, 'window_move', 'olive-gtk')
 
 
42
        self.glade = gtk.glade.XML(GLADEFILENAME, 'window_move', 'olive-gtk')
 
41
44
        self.window = self.glade.get_widget('window_move')
 
 
67
70
        """ Display the Move dialog. """
 
68
71
        self.window.show_all()
 
70
74
    def move(self, widget):
 
71
75
        destination = self.filechooser.get_filename()
 
73
77
        filename = self.selected
 
75
79
        if filename is None:
 
76
 
            error_dialog(_('No file was selected'),
 
77
 
                         _('Please select a file from the list to proceed.'))
 
 
80
            error_dialog(_i18n('No file was selected'),
 
 
81
                         _i18n('Please select a file from the list to proceed.'))
 
80
84
        source = os.path.join(self.wtpath, filename)
 
82
86
        # Move the file to a directory
 
84
 
            wt1, path1 = WorkingTree.open_containing(self.wt.abspath(source))
 
85
 
            wt2, path2 = WorkingTree.open_containing(destination)
 
86
 
            if wt1.basedir != wt2.basedir:
 
87
 
                error_dialog(_('Not the same branch'),
 
88
 
                             _('The destination is not in the same branch.'))
 
91
 
            wt1.move([source], wt1.relpath(destination))
 
92
 
        except errors.NotBranchError:
 
93
 
            error_dialog(_('File is not in a branch'),
 
94
 
                         _('The selected file is not in a branch.'))
 
 
87
        wt1, path1 = WorkingTree.open_containing(self.wt.abspath(source))
 
 
88
        wt2, path2 = WorkingTree.open_containing(destination)
 
 
89
        if wt1.basedir != wt2.basedir:
 
 
90
            error_dialog(_i18n('Not the same branch'),
 
 
91
                         _i18n('The destination is not in the same branch.'))
 
 
94
        wt1.move([source], wt1.relpath(destination))
 
99
97
    def close(self, widget=None):