~mmcg069/software-center/reviews-and-netstatus

« back to all changes in this revision

Viewing changes to softwarecenter/view/widgets/spinner.py

  • Committer: Matthew McGowan
  • Date: 2011-01-21 21:45:18 UTC
  • mfrom: (1354.2.56 trunk)
  • Revision ID: matthew.joseph.mcgowan@gmail.com-20110121214518-z1a23pr59zruo6y3
merge w trunk

Show diffs side-by-side

added added

removed removed

Lines of Context:
53
53
    a panel that contains a spinner preset to a standard size and centered
54
54
    an optional label_text value can be specified for display with the spinner
55
55
    """
56
 
    def __init__(self, label_text=None):
 
56
    def __init__(self, label_text=""):
57
57
        gtk.Viewport.__init__(self)
58
58
        self.spinner = Spinner()
59
59
        self.spinner.set_size_request(48, 48)
60
60
        
61
61
        # use a table for the spinner (otherwise the spinner is massive!)
62
62
        spinner_table = gtk.Table(3, 3, False)
63
 
        if label_text:
64
 
            spinner_label = gtk.Label()
65
 
            spinner_label.set_markup('<big>%s</big>' % label_text)
66
 
            spinner_vbox = gtk.VBox()
67
 
            spinner_vbox.pack_start(self.spinner, expand=False)
68
 
            spinner_vbox.pack_start(spinner_label, expand=True, padding=10)
69
 
            spinner_table.attach(spinner_vbox, 1, 2, 1, 2, gtk.EXPAND, gtk.EXPAND)
70
 
        else:
71
 
            spinner_table.attach(self.spinner, 1, 2, 1, 2, gtk.EXPAND, gtk.EXPAND)
 
63
        self.spinner_label = gtk.Label()
 
64
        self.spinner_label.set_markup('<big>%s</big>' % label_text)
 
65
        spinner_vbox = gtk.VBox()
 
66
        spinner_vbox.pack_start(self.spinner, expand=False)
 
67
        spinner_vbox.pack_start(self.spinner_label, expand=True, padding=10)
 
68
        spinner_table.attach(spinner_vbox, 1, 2, 1, 2, gtk.EXPAND, gtk.EXPAND)
72
69
        
73
70
        self.modify_bg(gtk.STATE_NORMAL, gtk.gdk.Color(1.0, 1.0, 1.0))
74
71
        self.add(spinner_table)
87
84
        """
88
85
        self.spinner.stop()
89
86
        self.spinner.hide()
90
 
 
 
87
        
 
88
    def set_text(self, spinner_text = ""):
 
89
        """
 
90
        useful for adding/removing/changing the label text after the spinner instance has been created
 
91
        """
 
92
        self.spinner_label.set_markup('<big>%s</big>' % spinner_text)
 
93
        
91
94
if __name__ == "__main__":
92
 
    spinner_view = SpinnerView(label_text="Connecting to payment service...")
 
95
    spinner_view = SpinnerView()
93
96
    spinner_view.start()
94
97
    
95
98
    window = gtk.Window()
96
99
    window.add(spinner_view)
97
100
    window.set_size_request(600, 500)
98
101
    window.set_position(gtk.WIN_POS_CENTER)
99
 
    window.show_all()
 
102
    window.show_all()    
100
103
    window.connect('destroy', gtk.main_quit)
101
 
 
 
104
    
 
105
    spinner_view.set_text("Loading...")
 
106
    
102
107
    gtk.main()