/b-gtk/fix-viz

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/b-gtk/fix-viz

« back to all changes in this revision

Viewing changes to olive/move.py

  • Committer: Szilveszter Farkas (Phanatic)
  • Date: 2006-09-30 11:01:59 UTC
  • mto: (0.14.3 main)
  • mto: This revision was merged to the branch mainline in revision 86.
  • Revision ID: Szilveszter.Farkas@gmail.com-20060930110159-d1d716766985f3dd
Fix Move, Rename and glade file.

Show diffs side-by-side

added added

removed removed

Lines of Context:
29
29
import bzrlib.errors as errors
30
30
from bzrlib.workingtree import WorkingTree
31
31
 
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
 
 
 
32
from olive import gladefile
 
33
from dialog import error_dialog
37
34
 
38
35
class OliveMove:
39
36
    """ Display the Move dialog and perform the needed actions. """
40
37
    def __init__(self, wt, wtpath, selected=[]):
41
38
        """ Initialize the Move dialog. """
42
 
        self.glade = gtk.glade.XML(GLADEFILENAME, 'window_move', 'olive-gtk')
 
39
        self.glade = gtk.glade.XML(gladefile, 'window_move', 'olive-gtk')
43
40
        
44
41
        self.window = self.glade.get_widget('window_move')
45
42
        
70
67
        """ Display the Move dialog. """
71
68
        self.window.show_all()
72
69
 
73
 
    @show_bzr_error
74
70
    def move(self, widget):
75
71
        destination = self.filechooser.get_filename()
76
72
 
77
73
        filename = self.selected
78
74
            
79
75
        if filename is None:
80
 
            error_dialog(_i18n('No file was selected'),
81
 
                         _i18n('Please select a file from the list to proceed.'))
 
76
            error_dialog(_('No file was selected'),
 
77
                         _('Please select a file from the list to proceed.'))
82
78
            return
83
79
        
84
 
        source = os.path.join(self.wtpath, filename)
 
80
        if self.wtpath == "":
 
81
            source = self.wt.abspath(filename)
 
82
        else:
 
83
            source = self.wt.abspath(self.wtpath + os.sep + filename)
85
84
        
86
85
        # Move the file to a directory
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.'))
 
86
        try:
 
87
            wt1, path1 = WorkingTree.open_containing(source)
 
88
            wt2, path2 = WorkingTree.open_containing(destination)
 
89
            if wt1.base != wt2.base:
 
90
                error_dialog(_('Not the same branch'),
 
91
                             _('The destination is not in the same branch.'))
 
92
                return
 
93
 
 
94
            wt1.move([source], destination)
 
95
        except errors.NotBranchError:
 
96
            error_dialog(_('File is not in a branch'),
 
97
                         _('The selected file is not in a branch.'))
92
98
            return
93
99
 
94
 
        wt1.move([source], wt1.relpath(destination))
95
100
        self.close()
96
101
    
97
102
    def close(self, widget=None):