## ------------------------------------------------------------------------
## iSiLK - A python-based graphical user interface for SiLK
## ------------------------------------------------------------------------
## Copyright (c) 2007-2008 Carnegie Mellon University. All Rights Reserved.
## ------------------------------------------------------------------------
## Authors: Andrew Kompanek (ajk@cert.org)
## ------------------------------------------------------------------------
## GNU General Public License (GPL) Rights pursuant to Version 2, June 1991
## Government Purpose License Rights (GPLR) pursuant to DFARS 252.225-7013
## ------------------------------------------------------------------------
## See the LICENSE file included in this distribution
## ------------------------------------------------------------------------

import wx, wx.html, ws
from constants import ISILK_APP_VERSION

class AboutBox(wx.Dialog):
     def __init__(self, parent):
        wx.Dialog.__init__(self, parent, -1, 'About iSiLK')
        text_app = "iSiLK"
        text_version = '''Version %s
        
A graphical user interface for the SiLK flow analysis tools
(http://tools.netsa.cert.org)''' % ISILK_APP_VERSION
        text_credit = '''Andrew Kompanek
CERT Network Situational Awareness
Copyright (c) 2007-2008 Carnegie Mellon University
All Rights Reserved

GNU General Public License (GPL) Rights pursuant to Version 2, June 1991
Government Purpose License Rights (GPLR) pursuant to DFARS 252.225-7013
   
iSiLK is written in Python using:

wxPython (http://www.wxpython.org) 
A python wrapper for the wxWidgetscross-platform 
graphical user interface library 

MatPlotLib (http://sourceforge.net/projects/matplotlib)
A python graphing library

Paramiko (https://green.lag.net/paramiko)
An ssh2 client implementation library
''' 
        sz = wx.BoxSizer(wx.VERTICAL)
        t = wx.StaticText(self, -1, text_app)
        t.SetFont(wx.Font(16, wx.SWISS, wx.NORMAL, wx.BOLD))
        sz.Add(t,
            flag=wx.ALIGN_CENTER_HORIZONTAL|wx.TOP, border=5)
        sz.Add(ws.SmStaticLabel(self, -1, text_version,
            style=wx.ALIGN_CENTER),
            flag=wx.ALIGN_CENTER_HORIZONTAL|wx.ALL, border=5)
        sz.Add(ws.SmStaticLabel(self,  -1, text_credit,
            style=wx.ALIGN_CENTER), flag=wx.ALIGN_CENTER_HORIZONTAL|wx.ALL,
            border=20)
        sz.Add(wx.Button(self, wx.ID_OK, "Close"),
            flag=wx.ALIGN_CENTER_HORIZONTAL|wx.ALL, border=20)
        self.SetSizerAndFit(sz)
        self.CentreOnParent(wx.BOTH)        

