/[thuban]/trunk/thuban/Thuban/UI/about.py
ViewVC logotype

Contents of /trunk/thuban/Thuban/UI/about.py

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2736 - (show annotations)
Tue Mar 13 22:21:51 2007 UTC (17 years, 11 months ago) by bernhard
File MIME type: text/x-python
File size: 6422 byte(s)
More release preparations: Translation string updated.  Release date 
added.

* po/*: Updated .po files with new strings. 

* po/de.po: Completed German translation (3 missing, one fuzzy).

* README: Bumped minium requirement of pysqlite to 1.0.1 (as I believe
Thuban was tested with on Debian.)

* NEWS: New phrasing for "changes up to". Added release date.

*  Thuban/UI/about.py: Added fileencoding information, otherwise
xgettext from 0.16.1 did not want to run on this file.

* Thuban/UI/__init__.py: Calling wx.Locale() with with parameter
wx.LANGUAGE_DEFAULT now. Without this change no message catalog is
loaded in wxPython 2.6.3.2.1.5 and thus the translation would not work. 

* setup.cfg: Change tarball compression from gzip to bzip2.

* packaging/debian: Moved the directory in here from toplevel,
because there could be several debian packaging dirs and this
is outdated.

* MANIFEST.in: Added toplevel ChangeLog to distribution.
Made sure that files under packaging are actually packaged.

1 # Copyright (c) 2001-2007 by Intevation GmbH
2 # vim: set fileencoding=ISO-8859-15 :
3 # Authors:
4 # Jonathan Coles <[email protected]>
5 # Bernhard Reiter <[email protected]>
6 # Silke Reimer <[email protected]>
7 #
8 # This program is free software under the GPL (>=v2)
9 # Read the file COPYING coming with Thuban for details.
10
11 """The About Box"""
12
13 __version__ = "$Revision$"
14 # $Source$
15 # $Id$
16
17 import wx
18
19 from Thuban import _, internal_from_unicode, get_internal_encoding
20 from Thuban.version import versions
21 from Thuban.Model.resource import gdal_support_status
22
23 from Thuban.UI.extensionregistry import ext_registry
24
25 class About(wx.Dialog):
26
27 def __init__(self, parent):
28 wx.Dialog.__init__(self, parent, -1, _("About Thuban"),
29 style = wx.DEFAULT_DIALOG_STYLE
30 | wx.SYSTEM_MENU
31 | wx.MINIMIZE_BOX
32 | wx.MAXIMIZE_BOX
33 | wx.RESIZE_BORDER,
34 size = (400, 250))
35
36 # Note: The source code is in ASCII, so we escape some
37 # characters to get byte strings in latin1.
38 maintainers = [ 'Bernhard Reiter (2006 - current)',
39 'Bernhard Herzog (2001 - 2005)' ]
40 lead_developer = 'Bernhard Herzog (2001 - 2005)'
41 developers = [ 'Jonathan Coles (2003, 2005)',
42 'Frank Koormann (2002 - )',
43 internal_from_unicode(u'Martin M\xfcller (2003)'),
44 'Didrik Pinte (2006 - )',
45 'Bernhard Reiter (2004 - )',
46 'Jan-Oliver Wagner (2002 - 2005)' ]
47 translators = [ ( _('French'), 'Daniel Calvelo Aros' ),
48 ( _('German'),
49 internal_from_unicode(u'Bj\xf6rn Broscheit')),
50 ( _('Hungarian'), 'Norbert Solymosi'),
51 ( _('Italian'), 'Maurizio Napolitano'),
52 ( _('Portuguese (Brazilian)'), 'Eduardo Patto Kanegae'),
53 ( _('Russian'), 'Alex Shevlakov'),
54 ( _('Spanish'), 'Daniel Calvelo Aros') ]
55 other_contributors = [ 'Jonathan Byron (2004)',
56 'Ole Rahn (2004)',
57 'Silke Reimer (2003, 2004)',
58 'Martin "Joey" Schulze (2004, 2005)' ]
59 dyn_modules = [ ('wxPython', versions['wxPython']),
60 ('Python', versions['python']),
61 ('PySQLite', versions['pysqlite']),
62 ('SQLite', versions['sqlite']),
63 ('GDAL', versions.get('gdal', _('- not available'))),
64 ('psycopg', versions.get('psycopg',
65 _('- not available')))]
66 direct_modules = [ \
67 ('GTK', versions.get('gtk', _('- not available'))),
68 ('proj', versions['proj']) ]
69
70 text = 'Thuban %s\n\n' % versions['thuban-long']
71
72 text += _('Currently using:\n')
73
74 for name, version in dyn_modules:
75 text+= '\t%s %s\n' % (name, version)
76 text += '\n'
77
78 text += _('\tInternal encoding: %s\n') % get_internal_encoding()
79 text += '\n'
80
81 if gdal_support_status:
82 text += gdal_support_status + "\n\n"
83
84 text += _('Compiled for:\n')
85
86 for name, version in direct_modules:
87 text+= '\t%s %s\n' % (name, version)
88 text += '\n'
89
90 text += _('Extensions:\n')
91 if ext_registry:
92 for ext in ext_registry:
93 text += '\t%s %s\n' % (ext.name, ext.version)
94 else:
95 text += _('\tNone registered.\n')
96 text += '\n'
97
98 text += _('Maintainers:\n')
99 for name in maintainers:
100 text += '\t%s\n' % name
101 text += '\n'
102
103 text += _('Lead Developer:\n')
104 text += '\t%s\n\n' % lead_developer
105
106 text += _('Developers:\n')
107 for name in developers:
108 text += '\t%s\n' % name
109 text += '\n'
110
111 text += _('Translators:\n')
112 for lang, name in translators:
113 text += '\t%s: %s\n' % (lang, name)
114 text += '\n'
115
116 text += _('Other Contributors:\n')
117 for name in other_contributors:
118 text += '\t%s\n' % name
119 text += '\n'
120
121 text += \
122 _("Questions and comments can be sent to the following addresses:\n"
123 "\tGeneral list (public):\n\t\t<[email protected]>\n"
124 "\tDevelopers list (public):\n\t\t<[email protected]>\n"
125 "\tThuban team at Intevation:\n\t\t<[email protected]>\n"
126 )
127
128 text += '\n\n'
129
130 text += _("Details on the registered extensions:\n\n")
131
132 if ext_registry:
133 for ext in ext_registry:
134 text += '%s %s:\n' % (ext.name, ext.version)
135 text += _('Copyright %s\n') % ext.copyright
136 text += _('Authors:\n')
137 for author in ext.authors:
138 text+= '\t%s\n' % author
139 text += ext.desc
140 text += '\n'
141 text += 'Status: %s' % ext.status
142 text += '\n\n'
143 else:
144 text += _('\tNone registered.\n')
145
146 self.text = text
147
148 text_title = wx.StaticText(self, -1,
149 _("Thuban is a program for exploring geographic data.\n\n") +
150 "Copyright 2001-2007 Intevation GmbH.\n" +
151 _("Thuban is licensed under the GNU GPL"),
152 style=wx.ST_NO_AUTORESIZE|wx.ALIGN_CENTRE)
153
154 textBox = wx.TextCtrl(self, -1, text,
155 style=wx.TE_READONLY|wx.TE_MULTILINE|wx.TE_LINEWRAP)
156 w, h = (300, 150)
157 textBox.SetSizeHints(w, h)
158 textBox.SetSize((w, h))
159
160 button_close = wx.Button(self, wx.ID_CANCEL, _("Close"))
161 button_close.SetDefault()
162
163 sizer = wx.BoxSizer(wx.VERTICAL)
164 sizer.Add(text_title, 0, wx.ALL|wx.EXPAND|wx.ADJUST_MINSIZE, 10)
165 sizer.Add(textBox, 1, wx.ALL|wx.EXPAND, 10)
166 sizer.Add(button_close, 0, wx.ALL|wx.ALIGN_RIGHT, 10)
167
168 self.SetAutoLayout(True)
169 self.SetSizer(sizer)
170 sizer.Fit(self)
171 sizer.SetSizeHints(self)
172 self.Layout()
173
174 self.Bind(wx.EVT_BUTTON, self.OnCancel, id=wx.ID_CANCEL)
175
176 def OnCancel(self, event):
177 self.EndModal(wx.ID_CANCEL)

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26