[GRASS-SVN] r47768 - grass/trunk/gui/wxpython/gui_modules

svn_grass at osgeo.org svn_grass at osgeo.org
Fri Aug 19 05:20:33 EDT 2011


Author: martinl
Date: 2011-08-19 02:20:32 -0700 (Fri, 19 Aug 2011)
New Revision: 47768

Modified:
   grass/trunk/gui/wxpython/gui_modules/ghelp.py
Log:
wxGUI: show also extra contributors


Modified: grass/trunk/gui/wxpython/gui_modules/ghelp.py
===================================================================
--- grass/trunk/gui/wxpython/gui_modules/ghelp.py	2011-08-19 07:27:36 UTC (rev 47767)
+++ grass/trunk/gui/wxpython/gui_modules/ghelp.py	2011-08-19 09:20:32 UTC (rev 47768)
@@ -473,13 +473,13 @@
                     self.SetPyData(itemNew, data)
         
 class AboutWindow(wx.Frame):
-    def __init__(self, parent):
-        """!Create custom About Window
+    """!Create custom About Window
 
-        @todo improve styling
-        """
-        wx.Frame.__init__(self, parent = parent, id = wx.ID_ANY, size = (550,400), 
-                          title = _('About GRASS GIS'))
+    @todo improve styling
+    """
+    def __init__(self, parent, size = (750, 400), 
+                 title = _('About GRASS GIS'), **kwargs):
+        wx.Frame.__init__(self, parent = parent, id = wx.ID_ANY, size = size, **kwargs)
         
         panel = wx.Panel(parent = self, id = wx.ID_ANY)
         
@@ -518,12 +518,6 @@
                                                label = 'http://grass.osgeo.org'),
                           pos = (0, 1),
                           flag = wx.ALIGN_LEFT)
-
-        # infoGridSizer.Add(item = hl.HyperLinkCtrl(parent = self, id = wx.ID_ANY,
-        #                                           label = 'http://grass.osgeo.org',
-        #                                           URL = 'http://grass.osgeo.org'),
-        #                   pos = (0, 1),
-        #                   flag = wx.LEFT)
         
         infoGridSizer.Add(item = wx.StaticText(parent = infoTxt, id = wx.ID_ANY,
                                                label = _('GIS Library Revision:')),
@@ -541,35 +535,18 @@
                       flag = wx.EXPAND | wx.ALL | wx.ALIGN_CENTER | wx.ALIGN_CENTER_VERTICAL,
                       border = 25)
         
-        #
-        # create pages
-        #
-        copyrightwin = self.PageCopyright()
-        licensewin   = self.PageLicense()
-        authorwin    = self.PageCredit()
-        contribwin   = self.PageContributors()
-        transwin     = self.PageTranslators()
-
         # create a flat notebook for displaying information about GRASS
-        nbstyle = FN.FNB_VC8 | \
-                FN.FNB_BACKGROUND_GRADIENT | \
-                FN.FNB_TABS_BORDER_SIMPLE | \
-                FN.FNB_NO_X_BUTTON
-        
-        if globalvar.hasAgw:
-            aboutNotebook = FN.FlatNotebook(panel, id = wx.ID_ANY, agwStyle = nbstyle)
-        else:
-            aboutNotebook = FN.FlatNotebook(panel, id = wx.ID_ANY, style = nbstyle)
+        aboutNotebook = menuform.GNotebook(panel, style = globalvar.FNPageStyle | FN.FNB_NO_X_BUTTON) 
         aboutNotebook.SetTabAreaColour(globalvar.FNPageColor)
         
-        # make pages for About GRASS notebook
-        pg1 = aboutNotebook.AddPage(infoTxt,      text = _("Info"))
-        pg2 = aboutNotebook.AddPage(copyrightwin, text = _("Copyright"))
-        pg3 = aboutNotebook.AddPage(licensewin,   text = _("License"))
-        pg4 = aboutNotebook.AddPage(authorwin,    text = _("Authors"))
-        pg5 = aboutNotebook.AddPage(contribwin,   text = _("Contributors"))
-        pg5 = aboutNotebook.AddPage(transwin,     text = _("Translators"))
-        
+        for title, win in ((_("Info"), infoTxt),
+                           (_("Copyright"), self._pageCopyright()),
+                           (_("License"), self._pageLicense()),
+                           (_("Authors"), self._pageCredit()),
+                           (_("Contributors"), self._pageContributors()),
+                           (_("Extra contributors"), self._pageContributors(extra = True)),
+                           (_("Translators"), self._pageTranslators())):
+            aboutNotebook.AddPage(page = win, text = title)
         wx.CallAfter(aboutNotebook.SetSelection, 0)
         
         # buttons
@@ -579,9 +556,8 @@
                      flag = wx.ALL | wx.ALIGN_RIGHT,
                      border = 5)
         # bindings
-        # self.aboutNotebook.Bind(FN.EVT_FLATNOTEBOOK_PAGE_CHANGED, self.OnAGPageChanged)
         btnClose.Bind(wx.EVT_BUTTON, self.OnCloseWindow)
-
+        
         infoTxt.SetSizer(infoSizer)
         infoSizer.Fit(infoTxt)
         
@@ -593,7 +569,7 @@
         panel.SetSizer(sizer)
         self.Layout()
     
-    def PageCopyright(self):
+    def _pageCopyright(self):
         """Copyright information"""
         copyfile = os.path.join(os.getenv("GISBASE"), "COPYING")
         if os.path.exists(copyfile):
@@ -618,7 +594,7 @@
         
         return copyrightwin
     
-    def PageLicense(self):
+    def _pageLicense(self):
         """Licence about"""
         licfile = os.path.join(os.getenv("GISBASE"), "GPL.TXT")
         if os.path.exists(licfile):
@@ -641,7 +617,7 @@
         
         return licensewin
     
-    def PageCredit(self):
+    def _pageCredit(self):
         """Credit about"""
                 # credits
         authfile = os.path.join(os.getenv("GISBASE"), "AUTHORS")
@@ -664,9 +640,12 @@
         
         return authorwin
 
-    def PageContributors(self):
+    def _pageContributors(self, extra = False):
         """Contributors info"""
-        contribfile = os.path.join(os.getenv("GISBASE"), "contributors.csv")
+        if extra:
+            contribfile = os.path.join(os.getenv("GISBASE"), "contributors_extra.csv")
+        else:
+            contribfile = os.path.join(os.getenv("GISBASE"), "contributors.csv")
         if os.path.exists(contribfile):
             contribFile = codecs.open(contribfile, encoding = 'utf-8', mode = 'r')
             contribs = list()
@@ -674,35 +653,46 @@
             for line in contribFile.readlines()[1:]:
                 line = line.rstrip('\n')
                 try:
-                    cvs_id, name, email, country, osgeo_id, rfc2_agreed = line.split(',')
+                    if extra:
+                        name, email, rfc2_agreed = line.split(',')
+                    else:
+                        cvs_id, name, email, country, osgeo_id, rfc2_agreed = line.split(',')
                 except ValueError:
                     errLines.append(line)
                     continue
-                contribs.append((name, email, country, osgeo_id))
+                if extra:
+                    contribs.append((name, email))
+                else:
+                    contribs.append((name, email, country, osgeo_id))
+            
             contribFile.close()
             
             if errLines:
                 gcmd.GError(parent = self,
-                            message = _("Error when reading file '%s'.") % translatorsfile + \
+                            message = _("Error when reading file '%s'.") % contribfile + \
                                 "\n\n" + _("Lines:") + " %s" % \
                                 os.linesep.join(map(utils.DecodeString, errLines)))
         else:
             contribs = None
         
         contribwin = scrolled.ScrolledPanel(self, id = wx.ID_ANY, 
-                                           style = wx.TAB_TRAVERSAL|wx.SUNKEN_BORDER)
-        contribwin.SetAutoLayout(1)
+                                           style = wx.TAB_TRAVERSAL | wx.SUNKEN_BORDER)
+        contribwin.SetAutoLayout(True)
         contribwin.SetupScrolling()
         contribwin.sizer = wx.BoxSizer(wx.VERTICAL)
         
         if not contribs:
             contribtxt = wx.StaticText(contribwin, id = wx.ID_ANY,
-                                       label = _('%s file missing') % 'contibutors.csv')
+                                       label = _('%s file missing') % contribfile)
             contribwin.sizer.Add(item = contribtxt, proportion = 1,
                                  flag = wx.EXPAND | wx.ALL, border = 3)
         else:
-            contribBox = wx.FlexGridSizer(cols = 4, vgap = 5, hgap = 5)
-            for item in (_('Name'), _('E-mail'), _('Country'), _('OSGeo_ID')):
+            if extra:
+                items = (_('Name'), _('E-mail'))
+            else:
+                items = (_('Name'), _('E-mail'), _('Country'), _('OSGeo_ID'))
+            contribBox = wx.FlexGridSizer(cols = len(items), vgap = 5, hgap = 5)
+            for item in items:
                 contribBox.Add(item = wx.StaticText(parent = contribwin, id = wx.ID_ANY,
                                                     label = item))
             for vals in sorted(contribs, key = lambda x: x[0]):
@@ -717,7 +707,7 @@
         
         return contribwin
 
-    def PageTranslators(self):
+    def _pageTranslators(self):
         """Translators info"""
         translatorsfile = os.path.join(os.getenv("GISBASE"), "translators.csv")
         if os.path.exists(translatorsfile):



More information about the grass-commit mailing list