chiark / gitweb /
Update copyright date
[cura.git] / Cura / gui / aboutWindow.py
index 0e713b7cbba5dfb00dbd69750ba5334fddcb2bdd..f04b2cfea6e9c88d29343f5b22a479b5c55c36db 100644 (file)
@@ -1,30 +1,53 @@
 __copyright__ = "Copyright (C) 2013 David Braam - Released under terms of the AGPLv3 License"
 
 import wx
+import wx.lib.scrolledpanel
 import platform
+from Cura.util import version
 
-class aboutWindow(wx.Dialog):
-       def __init__(self):
-               super(aboutWindow, self).__init__(None, title="About")
+class aboutWindow(wx.Frame):
+       def __init__(self, parent):
+               super(aboutWindow, self).__init__(parent, title=_("About"), style = wx.DEFAULT_DIALOG_STYLE)
 
                wx.EVT_CLOSE(self, self.OnClose)
 
+               p2 = wx.lib.scrolledpanel.ScrolledPanel(self,-1, size=(600, 500), style=wx.SIMPLE_BORDER)
+               p2.SetBackgroundColour('#FFFFFF')
+               s2 = wx.BoxSizer(wx.VERTICAL)
+               p2.SetSizer(s2)
+               p2.SetupScrolling()
+               self.scrolledpanel = p2
                p = wx.Panel(self)
                self.panel = p
-               s = wx.BoxSizer()
+               s = wx.BoxSizer(wx.VERTICAL)
                self.SetSizer(s)
-               s.Add(p, flag=wx.ALL, border=15)
+               s.Add(self.panel, flag=wx.ALL, border=15)
+               s.Add(self.scrolledpanel, flag=wx.EXPAND|wx.ALL, border=5)
                s = wx.BoxSizer(wx.VERTICAL)
                p.SetSizer(s)
 
-               title = wx.StaticText(p, -1, 'Cura')
+               title = wx.StaticText(p, -1, 'Cura LulzBot Edition')
                title.SetFont(wx.Font(18, wx.SWISS, wx.NORMAL, wx.BOLD))
                s.Add(title, flag=wx.ALIGN_CENTRE|wx.EXPAND|wx.BOTTOM, border=5)
 
-               s.Add(wx.StaticText(p, -1, 'End solution for Open Source Fused Filament Fabrication 3D printing.'))
-               s.Add(wx.StaticText(p, -1, 'Cura is currently developed and maintained by Ultimaker.'))
+               version_num = version.getVersion()
+               s.Add(wx.StaticText(p, -1, 'Version {}'.format(version_num)))
+
+               s.Add(wx.StaticText(p, -1, 'Release notes:'))
+               url = "code.alephobjects.com/w/cura/release-notes/"
+               s.Add(wx.HyperlinkCtrl(p, -1, url, url))
+
+               s.Add(wx.StaticText(p, -1, 'Source Code:'))
+               url2 = "code.alephobjects.com/diffusion/CURA/"
+               s.Add(wx.HyperlinkCtrl(p, -1, url2, url2))
 
-               s.Add(wx.StaticText(p, -1, 'Cura is build with the following components:'), flag=wx.TOP, border=10)
+               s.Add(wx.StaticText(p, -1, ''))
+               s.Add(wx.StaticText(p, -1, 'End solution for Open Source Fused Filament Fabrication 3D printing.'), flag=wx.TOP, border=5)
+               s.Add(wx.StaticText(p, -1, 'Cura is currently developed and maintained by David Braam and Ultimaker.'), flag=wx.TOP, border=5)
+               s.Add(wx.StaticText(p, -1, 'Cura LulzBot Edition has been modified and maintained by Aleph Objects, Inc.'))
+               s.Add(wx.StaticText(p, -1, 'for use with LulzBot 3D printers.'))
+
+               s2.Add(wx.StaticText(p2, -1, 'Cura is built with the following components:'), flag=wx.TOP, border=10)
                self.addComponent('Cura', 'Graphical user interface', 'AGPLv3', 'https://github.com/daid/Cura')
                self.addComponent('CuraEngine', 'GCode Generator', 'AGPLv3', 'https://github.com/Ultimaker/CuraEngine')
                self.addComponent('Clipper', 'Polygon clipping library', 'Boost', 'http://www.angusj.com/delphi/clipper.php')
@@ -36,50 +59,31 @@ class aboutWindow(wx.Dialog):
                self.addComponent('NumPy', 'Support library for faster math', 'BSD', 'http://www.numpy.org/')
                if platform.system() == "Windows":
                        self.addComponent('VideoCapture', 'Library for WebCam capture on windows', 'LGPLv2.1', 'http://videocapture.sourceforge.net/')
-                       self.addComponent('ffmpeg', 'Support for making timelaps video files', 'GPL', 'http://www.ffmpeg.org/')
+                       #self.addComponent('ffmpeg', 'Support for making timelaps video files', 'GPL', 'http://www.ffmpeg.org/')
                        self.addComponent('comtypes', 'Library to help with windows taskbar features on Windows 7', 'MIT', 'http://starship.python.net/crew/theller/comtypes/')
                        self.addComponent('EjectMedia', 'Utility to safe-remove SD cards', 'Freeware', 'http://www.uwe-sieber.de/english.html')
                self.addComponent('Pymclevel', 'Python library for reading Minecraft levels.', 'ISC', 'https://github.com/mcedit/pymclevel')
-
+               
+               s2.Add(wx.StaticText(p2, -1, ""))
+               s2.Add(wx.StaticText(p2, -1, "Cura utilizes graphics from:"))
+               self.addComponent('3d-printer', 'by Toke Frello', 'CC BY 3.0 US', 'https://thenounproject.com/term/3d-printer/170216/')
+               self.addComponent('Check Mark', 'by Stefan Parnarov', 'CC BY 3.0', 'https://thenounproject.com/term/check-mark/63794/')
+               
+               s2.Add(wx.StaticText(p2, -1, "Copyright (C) 2014-2016 Aleph Objects, Inc. - Released under terms of the AGPLv3 License"), flag=wx.TOP, border=10)
+               s2.Add(wx.StaticText(p2, -1, "Copyright (C) 2013 David Braam - Released under terms of the AGPLv3 License"))
                #Translations done by:
                #Dutch: Charlotte Jansen
-               #German: Gregor Luetolf
+               #German: Gregor Luetolf, Lars Potter
                #Polish: Piotr Paczynski
                #French: Jeremie Francois
                #Spanish: Jose Gemez
                self.Fit()
 
        def addComponent(self, name, description, license, url):
-               p = self.panel
+               p = self.scrolledpanel
                s = p.GetSizer()
                s.Add(wx.StaticText(p, -1, '* %s - %s' % (name, description)), flag=wx.TOP, border=5)
                s.Add(wx.StaticText(p, -1, '   License: %s - Website: %s' % (license, url)))
 
        def OnClose(self, e):
                self.Destroy()
-
-#              info = wx.AboutDialogInfo()
-#              info.SetName("Cura")
-#              info.SetDescription("""
-# End solution for Open Source Fused Filament Fabrication 3D printing.
-# * Cura is the graphical User Interface.
-# * CuraEngine is the slicer/gcode generator.
-# Cura and the CuraEngine are licensed AGPLv3.
-#              """)
-#              info.SetWebSite('http://software.ultimaker.com/')
-#              info.SetCopyright(_("Copyright (C) David Braam"))
-#              info.SetLicence("""
-#     This program is free software: you can redistribute it and/or modify
-#     it under the terms of the GNU Affero General Public License as published by
-#     the Free Software Foundation, either version 3 of the License, or
-#     (at your option) any later version.
-#
-#     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.  See the
-#     GNU Affero General Public License for more details.
-#
-#     You should have received a copy of the GNU Affero General Public License
-#     along with this program.  If not, see <http://www.gnu.org/licenses/>.
-# """)
-#              wx.AboutBox(info)