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

  • Committer: Jelmer Vernooij
  • Date: 2011-08-23 23:53:59 UTC
  • Revision ID: jelmer@samba.org-20110823235359-0k7mlydx8txgvw9x
Mark as supporting bzr 2.5.0.

Show diffs side-by-side

added added

removed removed

Lines of Context:
20
20
except:
21
21
    pass
22
22
 
23
 
import bzrlib
24
23
import gtk
25
24
import os
26
 
from bzrlib.plugins.gtk import icon_path
 
25
 
 
26
import bzrlib
 
27
 
 
28
from bzrlib.plugins.gtk import (
 
29
    data_path,
 
30
    icon_path,
 
31
    )
 
32
 
 
33
 
 
34
def read_license():
 
35
    license_paths = [data_path("COPYING"), "/usr/share/common-licenses/GPL-2"]
 
36
    for license_file in license_paths:
 
37
        if license_file is not None and os.path.exists(license_file):
 
38
            return file(license_file).read()
 
39
    # Fall back to just license name if we can't find the file
 
40
    return "GPLv2 or later"
 
41
 
 
42
 
 
43
def load_credits():
 
44
    import pickle
 
45
    try:
 
46
        credits = pickle.load(file(data_path("credits.pickle")))
 
47
    except IOError:
 
48
        credits = None
 
49
    return credits
 
50
 
27
51
 
28
52
class AboutDialog(gtk.AboutDialog):
29
53
    def __init__(self):
31
55
        self.set_name("Bazaar GTK")
32
56
        self.set_version(bzrlib.plugins.gtk.version_string)
33
57
        self.set_website("http://bazaar-vcs.org/BzrGtk")
34
 
        self.set_license("GNU GPL v2 or later")
35
 
        self.set_icon(gtk.gdk.pixbuf_new_from_file(icon_path("bzr-icon-64.png")))
 
58
        self.set_license(read_license())
 
59
        self.set_logo(gtk.gdk.pixbuf_new_from_file(icon_path("bzr-icon-64.png")))
 
60
        credits = load_credits()
 
61
        if credits is not None:
 
62
            (authors, documenters, artists, translators) = credits
 
63
            self.set_authors(authors)
 
64
            self.set_documenters(documenters)
 
65
            self.set_artists(artists)
 
66
            self.set_translator_credits("\n".join(translators))
36
67
        self.connect ("response", lambda d, r: d.destroy())
37
68
 
 
69