/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/mkdir.py

  • Committer: Szilveszter Farkas (Phanatic)
  • Date: 2006-09-30 13:04:15 UTC
  • mto: (0.14.3 main)
  • mto: This revision was merged to the branch mainline in revision 86.
  • Revision ID: Szilveszter.Farkas@gmail.com-20060930130415-aba4100709e11f0a
Loads of fixes. Pyflakes cleanup.

Show diffs side-by-side

added added

removed removed

Lines of Context:
15
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
16
 
17
17
import os
18
 
import sys
19
18
 
20
19
try:
21
20
    import pygtk
22
21
    pygtk.require("2.0")
23
22
except:
24
23
    pass
25
 
try:
26
 
    import gtk
27
 
    import gtk.glade
28
 
except:
29
 
    sys.exit(1)
30
 
 
31
 
import olive.backend.errors as errors
32
 
import olive.backend.fileops as fileops
 
24
 
 
25
import gtk
 
26
import gtk.glade
 
27
 
 
28
import bzrlib.errors as errors
 
29
 
 
30
from olive import gladefile
 
31
from dialog import error_dialog, warning_dialog
33
32
 
34
33
class OliveMkdir:
35
34
    """ Display the Make directory dialog and perform the needed actions. """
36
 
    def __init__(self, gladefile, comm, dialog):
 
35
    def __init__(self, wt, wtpath):
37
36
        """ Initialize the Make directory dialog. """
38
 
        self.gladefile = gladefile
39
 
        self.glade = gtk.glade.XML(self.gladefile, 'window_mkdir', 'olive-gtk')
40
 
        
41
 
        # Communication object
42
 
        self.comm = comm
43
 
        # Dialog object
44
 
        self.dialog = dialog
 
37
        self.glade = gtk.glade.XML(gladefile, 'window_mkdir', 'olive-gtk')
45
38
        
46
39
        self.window = self.glade.get_widget('window_mkdir')
47
40
        
51
44
        
52
45
        # Connect the signals to the handlers
53
46
        self.glade.signal_autoconnect(dic)
 
47
        
 
48
        self.wt = wt
 
49
        self.wtpath = wtpath
54
50
 
55
51
    def display(self):
56
52
        """ Display the Make directory dialog. """
64
60
        dirname = entry.get_text()
65
61
        
66
62
        if dirname == "":
67
 
            self.dialog.error_dialog(_('No directory name given'),
68
 
                                     _('Please specify a desired name for the new directory.'))
 
63
            error_dialog(_('No directory name given'),
 
64
                         _('Please specify a desired name for the new directory.'))
69
65
            return
70
66
        
71
 
        newdir = self.comm.get_path() + '/' + dirname
72
 
        
73
67
        if checkbox.get_active():
74
68
            # Want to create a versioned directory
75
69
            try:
76
 
                fileops.mkdir(newdir)
77
 
            except errors.DirectoryAlreadyExists:
78
 
                self.dialog.error_dialog(_('Directory already exists'),
79
 
                                         _('Please specify another name to continue.'))
80
 
                return
 
70
                os.mkdir(os.path.join(self.wt.basedir, self.wtpath, dirname))
 
71
 
 
72
                self.wt.add([os.path.join(self.wtpath, dirname)])
 
73
            except OSError, e:
 
74
                if e.errno == 17:
 
75
                    error_dialog(_('Directory already exists'),
 
76
                                 _('Please specify another name to continue.'))
 
77
                else:
 
78
                    raise
81
79
            except errors.NotBranchError:
82
 
                self.dialog.warning_dialog(_('Directory is not in a branch'),
83
 
                                           _('You can only create a non-versioned directory.'))
 
80
                warning_dialog(_('Directory is not in a branch'),
 
81
                               _('You can only create a non-versioned directory.'))
84
82
        else:
85
83
            # Just a simple directory
86
84
            try:
87
 
                os.mkdir(newdir)
 
85
                os.mkdir(os.path.join(self.wt.basedir, self.wtpath, dirname))
88
86
            except OSError, e:
89
87
                if e.errno == 17:
90
 
                    self.dialog.error_dialog(_('Directory already exists'),
91
 
                                             _('Please specify another name to continue.'))
 
88
                    error_dialog(_('Directory already exists'),
 
89
                                 _('Please specify another name to continue.'))
92
90
                    return
93
91
 
94
92
        self.close()
95
 
        self.comm.refresh_right()
96
93
    
97
94
    def close(self, widget=None):
98
95
        self.window.destroy()