"""
FtpCube
Copyright (C) Michael Gilfix
This file is part of FtpCube.
You should have received a file COPYING containing license terms
along with this program; if not, write to Michael Gilfix
(mgilfix@eecs.tufts.edu) for a copy.
This version of FtpCube is open source; you can redistribute it and/or
modify it under the terms listed in the file COPYING.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
"""
import utils
import version
import icons.ftpcube
import wx
import wxversion
import os.path
class AboutWindow(wx.Dialog):
"""Ftpcube About Window.
This window displays information about the Ftpcube application. The version number
displayed is loaded from the version module."""
def __init__(self, parent):
"""Creates and displays the About window."""
if __debug__:
print "Making About window."
wx.Dialog.__init__(self, parent, -1, _("Ftpcube - About"))
self.SetIcon(utils.getAppIcon())
# Create our own icon bitmap and our static text
icon = icons.ftpcube.getBitmap()
bitmap = wx.StaticBitmap(self, -1, icon)
text = wx.StaticText(self, -1, self.getAboutText(), style=wx.ALIGN_CENTER)
tsizer = wx.BoxSizer(wx.HORIZONTAL)
tsizer.Add((20, 1))
tsizer.Add(text, 1, wx.EXPAND)
tsizer.Add((20, 1))
bsizer = wx.BoxSizer(wx.HORIZONTAL)
bsizer.Add((20, 1), 1, wx.EXPAND)
bsizer.Add(bitmap, 0, wx.EXPAND)
bsizer.Add((20, 1), 1, wx.EXPAND)
line = wx.StaticLine(self, -1)
lsizer = wx.BoxSizer(wx.HORIZONTAL)
lsizer.Add((20, 1))
lsizer.Add(line, 1, wx.EXPAND)
lsizer.Add((20, 1))
button = wx.Button(self, wx.ID_OK, _("Ok"))
button.SetDefault()
hsizer = wx.BoxSizer(wx.HORIZONTAL)
hsizer.Add((20, 1), 1, wx.EXPAND)
hsizer.Add(button, 0, wx.EXPAND)
hsizer.Add((20, 1), 1, wx.EXPAND)
sizer = wx.BoxSizer(wx.VERTICAL)
sizer.Add((10, 10))
sizer.Add(tsizer, 1, wx.EXPAND)
sizer.Add((10, 10))
sizer.Add(bsizer, 0, wx.EXPAND)
sizer.Add((10, 10))
sizer.Add(lsizer, 0, wx.EXPAND)
sizer.Add((10, 20))
sizer.Add(hsizer, 0, wx.EXPAND)
sizer.Add((10, 20))
self.SetAutoLayout(True)
self.SetSizer(sizer)
sizer.Fit(self)
sizer.SetSizeHints(self)
self.Center()
def getAboutText(self):
"""Returns the text describing the application."""
app_version = version.getVersion()
wx_version = wxversion.getInstalled()
os_desc = wx.GetOsDescription()
return \
_("""Ftpcube - A graphical (S)FTP client.\n
Ftpcube version: %(version)s.
wxPython version: %(wxversion)s.
Running on: %(os)s\n
Ftpcube is a graphical (S)FTP client written in Python using the wxPython graphical toolkit.
The interface is inspired by LeechFTP by Jan Debis. More information can be found about
Ftpcube at its homepage: http://ftpcube.sourceforge.net.\n
Michael Gilfix <mgilfix@eecs.tufts.edu>
Copyright (C) Michael Gilfix
Licensing: ARTISTIC""") %{ 'version' : app_version, 'wxversion' : wx_version, 'os': os_desc }
|