Added a loading splashscreen. (needs better artwork)

master
daid 2012-08-30 11:47:20 +02:00
parent cb9b85c8d3
commit 600fdae59b
4 changed files with 44 additions and 4 deletions

View File

@ -73,8 +73,12 @@ def main():
else:
if len(args) > 0:
profile.putPreference('lastFile', ';'.join(args))
from gui import mainWindow
mainWindow.main()
from gui import splashScreen
splashScreen.showSplash(mainWindowRunCallback)
def mainWindowRunCallback():
from gui import mainWindow
mainWindow.main()
if __name__ == '__main__':
main()

View File

@ -24,7 +24,7 @@ from util import version
from util import sliceRun
def main():
app = wx.App(False)
#app = wx.App(False)
if profile.getPreference('wizardDone') == 'False':
configWizard.configWizard()
profile.putPreference("wizardDone", "True")
@ -32,7 +32,7 @@ def main():
simpleMode.simpleModeWindow()
else:
mainWindow()
app.MainLoop()
#app.MainLoop()
class mainWindow(configBase.configWindowBase):
"Main user interface window"

36
Cura/gui/splashScreen.py Normal file
View File

@ -0,0 +1,36 @@
import sys, os
#We only need the core here, which speeds up the import. As we want to show the splashscreen ASAP.
import wx._core
def getBitmapImage(filename):
#The frozen executable has the script files in a zip, so we need to exit another level to get to our images.
if hasattr(sys, 'frozen'):
return wx.Bitmap(os.path.normpath(os.path.join(os.path.split(__file__)[0], "../../images", filename)))
else:
return wx.Bitmap(os.path.normpath(os.path.join(os.path.split(__file__)[0], "../images", filename)))
class splashScreen(wx.SplashScreen):
def __init__(self, callback):
self.callback = callback
bitmap = getBitmapImage("splash.png")
super(splashScreen, self).__init__(bitmap, wx.SPLASH_CENTRE_ON_SCREEN, 0, None)
wx.CallAfter(callback)
wx.CallAfter(self.Destroy)
def showSplash(callback):
app = wx.App(False)
splashScreen(callback)
app.MainLoop()
def testCallback():
print "Callback!"
import time
time.sleep(2)
print "!Callback"
def main():
showSplash(testCallback)
if __name__ == u'__main__':
main()

BIN
Cura/images/splash.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB