def __init__(self, parentWindow=None): self.needsUpdate = False self.__version__ = __version__ if not getDefault("DrawBotCheckForUpdatesAtStartup", True): return self.currentVersion = getCurrentVersion() self.needsUpdate = __version__ < self.currentVersion if not self.needsUpdate: return if parentWindow: self.w = vanilla.Sheet((450, 130), parentWindow=parentWindow) else: self.w = vanilla.Window((450, 130)) self.w.appIcon = vanilla.ImageView((25, 15, 65, 65)) self.w.appIcon.setImage(imageObject=AppKit.NSApp().applicationIconImage()) title = "There is a new version of DrawBot!" txt = AppKit.NSAttributedString.alloc().initWithString_attributes_(title, {AppKit.NSFontAttributeName : AppKit.NSFont.boldSystemFontOfSize_(0)}) self.w.introBold = vanilla.TextBox((100, 15, -15, 20), txt) self.w.intro = vanilla.TextBox((100, 45, -15, 200), "DrawBot %s is out now (you have %s).\nWould you like to download it now?" % (self.currentVersion, __version__), sizeStyle="small") self.w.cancelButton = vanilla.Button((-270, -30, 60, 20), "Cancel", callback=self.cancelCallback, sizeStyle="small") self.w.cancelButton.bind(".", ["command"]) self.w.cancelButton.bind(unichr(27), []) self.w.openInBrowser = vanilla.Button((-200, -30, 120, 20), "Show In Browser", callback=self.openInBrowserCallback, sizeStyle="small") self.w.okButton = vanilla.Button((-70, -30, 55, 20), "OK", callback=self.okCallback, sizeStyle="small") self.w.setDefaultButton(self.w.okButton) self.w.open()
def __init__(self, parentWindow=None): self.needsUpdate = False self.__version__ = __version__ if not getDefault("DrawBotCheckForUpdatesAtStartup", True): return self.currentVersion = getCurrentVersion() self.needsUpdate = StrictVersion(__version__) < StrictVersion(self.currentVersion) if not self.needsUpdate: return if parentWindow: self.w = vanilla.Sheet((450, 130), parentWindow=parentWindow) else: self.w = vanilla.Window((450, 130)) self.w.appIcon = vanilla.ImageView((25, 15, 65, 65)) self.w.appIcon.setImage(imageObject=AppKit.NSApp().applicationIconImage()) title = "There is a new version of DrawBot!" txt = AppKit.NSAttributedString.alloc().initWithString_attributes_(title, {AppKit.NSFontAttributeName: AppKit.NSFont.boldSystemFontOfSize_(0)}) self.w.introBold = vanilla.TextBox((100, 15, -15, 20), txt) self.w.intro = vanilla.TextBox((100, 45, -15, 200), "DrawBot %s is out now (you have %s).\nWould you like to download it now?" % (self.currentVersion, __version__), sizeStyle="small") self.w.cancelButton = vanilla.Button((-270, -30, 60, 20), "Cancel", callback=self.cancelCallback, sizeStyle="small") self.w.cancelButton.bind(".", ["command"]) self.w.cancelButton.bind(unichr(27), []) self.w.openInBrowser = vanilla.Button((-200, -30, 120, 20), "Show In Browser", callback=self.openInBrowserCallback, sizeStyle="small") self.w.okButton = vanilla.Button((-70, -30, 55, 20), "OK", callback=self.okCallback, sizeStyle="small") self.w.setDefaultButton(self.w.okButton) self.w.open()
def getCurrentVersion(): """ Return the newest version number from github. """ if not getDefault("checkForUpdatesAtStartup", True): return "" path = "https://raw.github.com/typemytype/drawbot/master/drawBotSettings.py" try: response = urllib2.urlopen(path) code = response.read() response.close() exec(code) except: __version__ = "" return __version__