/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: rodney.dawes at canonical
  • Date: 2008-10-25 06:02:09 UTC
  • Revision ID: rodney.dawes@canonical.com-20081025060209-irlizouino63cs1m
        * preferences/__init__.py:
        Remove the dialog separator
        Remove useless extra call to self._create_pages()
        Make the default window size smaller
        Set the default border width on various widgets
        Set the current notebook page to the first one

        * preferences/identity.py:
        Set various border widths appropriately
        Align the labels to the left
        Remove the unneeded bold markup from the labels
        Change the "User Id" label to "E-Mail"
        Align the radio group labels to the top of the groups

        * preferences/plugins.py:
        Set various border widths appropriately
        Set the default paned position to something more sensible
        Set the shadow type on the treeview's scrolled window to in
        Align the Author and Version labels to the left

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
 
from os.path import dirname
19
18
 
20
19
try:
21
20
    import pygtk
24
23
    pass
25
24
 
26
25
import gtk
27
 
import gtk.glade
28
26
 
29
27
import bzrlib.errors as errors
30
28
from bzrlib.workingtree import WorkingTree
31
29
 
32
30
from bzrlib.plugins.gtk import _i18n
33
31
from bzrlib.plugins.gtk.dialog import error_dialog
34
 
from errors import show_bzr_error
35
 
from guifiles import GLADEFILENAME
36
 
 
37
 
 
38
 
class OliveMove:
 
32
from bzrlib.plugins.gtk.errors import show_bzr_error
 
33
 
 
34
 
 
35
class MoveDialog(gtk.Dialog):
39
36
    """ Display the Move dialog and perform the needed actions. """
40
 
    def __init__(self, wt, wtpath, selected=[]):
 
37
    
 
38
    def __init__(self, wt, wtpath, selected, parent=None):
41
39
        """ Initialize the Move dialog. """
42
 
        self.glade = gtk.glade.XML(GLADEFILENAME, 'window_move', 'olive-gtk')
43
 
        
44
 
        self.window = self.glade.get_widget('window_move')
45
 
        
46
 
        # Dictionary for signal_autoconnect
47
 
        dic = { "on_button_move_move_clicked": self.move,
48
 
                "on_button_move_cancel_clicked": self.close }
49
 
        
50
 
        # Connect the signals to the handlers
51
 
        self.glade.signal_autoconnect(dic)
52
 
        
 
40
        gtk.Dialog.__init__(self, title="Olive - Move",
 
41
                                  parent=parent,
 
42
                                  flags=0,
 
43
                                  buttons=(gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL))
 
44
        
 
45
        # Get arguments
53
46
        self.wt = wt
54
47
        self.wtpath = wtpath
55
48
        self.selected = selected
58
51
            self.selected = ""
59
52
        
60
53
        if self.wtpath == "":
61
 
            directory = dirname(self.wt.abspath(self.selected))
 
54
            directory = os.path.dirname(self.wt.abspath(self.selected))
62
55
        else:
63
 
            directory = dirname(self.wt.abspath(self.wtpath + os.sep + self.selected))
64
 
        
65
 
        # Set FileChooser directory
66
 
        self.filechooser = self.glade.get_widget('filechooserbutton_move')
67
 
        self.filechooser.set_filename(directory)
68
 
 
69
 
    def display(self):
70
 
        """ Display the Move dialog. """
71
 
        self.window.show_all()
 
56
            directory = os.path.dirname(self.wt.abspath(self.wtpath + os.sep + self.selected))
 
57
        
 
58
        # Create widgets
 
59
        self._hbox = gtk.HBox()
 
60
        self._label_move_to = gtk.Label(_i18n("Move to"))
 
61
        self._filechooser_dialog = gtk.FileChooserDialog(title="Please select a folder",
 
62
                                    parent=self.window,
 
63
                                    action=gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER,
 
64
                                    buttons=(gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL,
 
65
                                             gtk.STOCK_OPEN, gtk.RESPONSE_OK))
 
66
        self._filechooser_dialog.set_default_response(gtk.RESPONSE_OK)
 
67
        self.filechooser = gtk.FileChooserButton(self._filechooser_dialog)
 
68
        self._button_move = gtk.Button(_i18n("_Move"))
 
69
        self._button_move_icon = gtk.Image()
 
70
        self._button_move_icon.set_from_stock(gtk.STOCK_APPLY, gtk.ICON_SIZE_BUTTON)
 
71
        self._button_move.set_image(self._button_move_icon)
 
72
        
 
73
        self._button_move.connect('clicked', self._on_move_clicked)
 
74
        
 
75
        # Set location
 
76
        self._filechooser_dialog.set_current_folder(directory)
 
77
        
 
78
        # Add widgets to dialog
 
79
        self.vbox.add(self._hbox)
 
80
        self._hbox.add(self._label_move_to)
 
81
        self._hbox.add(self.filechooser)
 
82
        self._hbox.set_spacing(5)
 
83
        self.action_area.pack_end(self._button_move)
 
84
        
 
85
        self.vbox.show_all()
72
86
 
73
87
    @show_bzr_error
74
 
    def move(self, widget):
 
88
    def _on_move_clicked(self, widget):
75
89
        destination = self.filechooser.get_filename()
76
 
 
 
90
        
 
91
        if destination == None:
 
92
            error_dialog(_i18n('No folder was selected'),
 
93
                         _i18n('Please select a folder to move the selected file to'))
 
94
            return
 
95
        
77
96
        filename = self.selected
78
97
            
79
98
        if filename is None:
92
111
            return
93
112
 
94
113
        wt1.move([source], wt1.relpath(destination))
95
 
        self.close()
96
 
    
97
 
    def close(self, widget=None):
98
 
        self.window.destroy()
 
114
        
 
115
        self.response(gtk.RESPONSE_OK)