1585 self.versionAct.setStatusTip(self.trUtf8( |
1585 self.versionAct.setStatusTip(self.trUtf8( |
1586 'Display version information')) |
1586 'Display version information')) |
1587 self.versionAct.setWhatsThis(self.trUtf8( |
1587 self.versionAct.setWhatsThis(self.trUtf8( |
1588 """<b>Show Versions</b>""" |
1588 """<b>Show Versions</b>""" |
1589 """<p>Display version information.</p>""" |
1589 """<p>Display version information.</p>""" |
1590 )) |
1590 )) |
1591 self.versionAct.triggered[()].connect(self.__showVersions) |
1591 self.versionAct.triggered[()].connect(self.__showVersions) |
1592 self.actions.append(self.versionAct) |
1592 self.actions.append(self.versionAct) |
1593 |
1593 |
1594 self.checkUpdateAct = E5Action( |
1594 self.checkUpdateAct = E5Action( |
1595 self.trUtf8('Check for Updates'), |
1595 self.trUtf8('Check for Updates'), |
1596 self.trUtf8('Check for &Updates...'), 0, 0, self, 'check_updates') |
1596 self.trUtf8('Check for &Updates...'), 0, 0, self, 'check_updates') |
1597 self.checkUpdateAct.setStatusTip(self.trUtf8('Check for Updates')) |
1597 self.checkUpdateAct.setStatusTip(self.trUtf8('Check for Updates')) |
1598 self.checkUpdateAct.setWhatsThis(self.trUtf8( |
1598 self.checkUpdateAct.setWhatsThis(self.trUtf8( |
1599 """<b>Check for Updates...</b>""" |
1599 """<b>Check for Updates...</b>""" |
1600 """<p>Checks the internet for updates of eric5.</p>""" |
1600 """<p>Checks the internet for updates of eric5.</p>""" |
1601 )) |
1601 )) |
1602 self.checkUpdateAct.triggered[()].connect(self.performVersionCheck) |
1602 self.checkUpdateAct.triggered[()].connect(self.performVersionCheck) |
1603 self.actions.append(self.checkUpdateAct) |
1603 self.actions.append(self.checkUpdateAct) |
1604 |
1604 |
1605 self.showVersionsAct = E5Action( |
1605 self.showVersionsAct = E5Action( |
1606 self.trUtf8('Show downloadable versions'), |
1606 self.trUtf8('Show downloadable versions'), |
1610 self.trUtf8('Show the versions available for download')) |
1610 self.trUtf8('Show the versions available for download')) |
1611 self.showVersionsAct.setWhatsThis(self.trUtf8( |
1611 self.showVersionsAct.setWhatsThis(self.trUtf8( |
1612 """<b>Show downloadable versions...</b>""" |
1612 """<b>Show downloadable versions...</b>""" |
1613 """<p>Shows the eric5 versions available for download """ |
1613 """<p>Shows the eric5 versions available for download """ |
1614 """from the internet.</p>""" |
1614 """from the internet.</p>""" |
1615 )) |
1615 )) |
1616 self.showVersionsAct.triggered[()].connect( |
1616 self.showVersionsAct.triggered[()].connect( |
1617 self.showAvailableVersionsInfo) |
1617 self.showAvailableVersionsInfo) |
1618 self.actions.append(self.showVersionsAct) |
1618 self.actions.append(self.showVersionsAct) |
1619 |
1619 |
1620 self.reportBugAct = E5Action( |
1620 self.reportBugAct = E5Action( |
1623 0, 0, self, 'report_bug') |
1623 0, 0, self, 'report_bug') |
1624 self.reportBugAct.setStatusTip(self.trUtf8('Report a bug')) |
1624 self.reportBugAct.setStatusTip(self.trUtf8('Report a bug')) |
1625 self.reportBugAct.setWhatsThis(self.trUtf8( |
1625 self.reportBugAct.setWhatsThis(self.trUtf8( |
1626 """<b>Report Bug...</b>""" |
1626 """<b>Report Bug...</b>""" |
1627 """<p>Opens a dialog to report a bug.</p>""" |
1627 """<p>Opens a dialog to report a bug.</p>""" |
1628 )) |
1628 )) |
1629 self.reportBugAct.triggered[()].connect(self.__reportBug) |
1629 self.reportBugAct.triggered[()].connect(self.__reportBug) |
1630 self.actions.append(self.reportBugAct) |
1630 self.actions.append(self.reportBugAct) |
1631 |
1631 |
1632 self.requestFeatureAct = E5Action( |
1632 self.requestFeatureAct = E5Action( |
1633 self.trUtf8('Request Feature'), |
1633 self.trUtf8('Request Feature'), |
1636 self.requestFeatureAct.setStatusTip(self.trUtf8( |
1636 self.requestFeatureAct.setStatusTip(self.trUtf8( |
1637 'Send a feature request')) |
1637 'Send a feature request')) |
1638 self.requestFeatureAct.setWhatsThis(self.trUtf8( |
1638 self.requestFeatureAct.setWhatsThis(self.trUtf8( |
1639 """<b>Request Feature...</b>""" |
1639 """<b>Request Feature...</b>""" |
1640 """<p>Opens a dialog to send a feature request.</p>""" |
1640 """<p>Opens a dialog to send a feature request.</p>""" |
1641 )) |
1641 )) |
1642 self.requestFeatureAct.triggered[()].connect(self.__requestFeature) |
1642 self.requestFeatureAct.triggered[()].connect(self.__requestFeature) |
1643 self.actions.append(self.requestFeatureAct) |
1643 self.actions.append(self.requestFeatureAct) |
1644 |
1644 |
1645 self.utActGrp = createActionGroup(self) |
1645 self.utActGrp = createActionGroup(self) |
1646 |
1646 |
2907 versionText += """<tr><td><b>QScintilla</b></td><td>{0}</td></tr>"""\ |
2907 versionText += """<tr><td><b>QScintilla</b></td><td>{0}</td></tr>"""\ |
2908 .format(QSCINTILLA_VERSION_STR) |
2908 .format(QSCINTILLA_VERSION_STR) |
2909 try: |
2909 try: |
2910 from PyQt4.QtWebKit import qWebKitVersion |
2910 from PyQt4.QtWebKit import qWebKitVersion |
2911 versionText += """<tr><td><b>WebKit</b></td><td>{0}</td></tr>"""\ |
2911 versionText += """<tr><td><b>WebKit</b></td><td>{0}</td></tr>"""\ |
2912 .format(qWebKitVersion()) |
2912 .format(qWebKitVersion()) |
2913 except ImportError: |
2913 except ImportError: |
2914 pass |
2914 pass |
2915 versionText += """<tr><td><b>{0}</b></td><td>{1}</td></tr>"""\ |
2915 versionText += """<tr><td><b>{0}</b></td><td>{1}</td></tr>"""\ |
2916 .format(Program, Version) |
2916 .format(Program, Version) |
2917 versionText += self.trUtf8("""</table>""") |
2917 versionText += self.trUtf8("""</table>""") |
4042 self, |
4042 self, |
4043 self.trUtf8('Problem'), |
4043 self.trUtf8('Problem'), |
4044 self.trUtf8( |
4044 self.trUtf8( |
4045 '<p>The file <b>{0}</b> does not exist or' |
4045 '<p>The file <b>{0}</b> does not exist or' |
4046 ' is zero length.</p>') |
4046 ' is zero length.</p>') |
4047 .format(fn)) |
4047 .format(fn)) |
4048 return |
4048 return |
4049 except EnvironmentError: |
4049 except EnvironmentError: |
4050 E5MessageBox.critical( |
4050 E5MessageBox.critical( |
4051 self, |
4051 self, |
4052 self.trUtf8('Problem'), |
4052 self.trUtf8('Problem'), |
4053 self.trUtf8( |
4053 self.trUtf8( |
4054 '<p>The file <b>{0}</b> does not exist or' |
4054 '<p>The file <b>{0}</b> does not exist or' |
4055 ' is zero length.</p>') |
4055 ' is zero length.</p>') |
4056 .format(fn)) |
4056 .format(fn)) |
4057 return |
4057 return |
4058 |
4058 |
4059 if Utilities.isMacPlatform(): |
4059 if Utilities.isMacPlatform(): |
4060 designer, args = Utilities.prepareQtMacBundle( |
4060 designer, args = Utilities.prepareQtMacBundle( |
4061 "designer", version, args) |
4061 "designer", version, args) |
4109 self, |
4109 self, |
4110 self.trUtf8('Problem'), |
4110 self.trUtf8('Problem'), |
4111 self.trUtf8( |
4111 self.trUtf8( |
4112 '<p>The file <b>{0}</b> does not exist or' |
4112 '<p>The file <b>{0}</b> does not exist or' |
4113 ' is zero length.</p>') |
4113 ' is zero length.</p>') |
4114 .format(fn)) |
4114 .format(fn)) |
4115 return |
4115 return |
4116 except EnvironmentError: |
4116 except EnvironmentError: |
4117 E5MessageBox.critical( |
4117 E5MessageBox.critical( |
4118 self, |
4118 self, |
4119 self.trUtf8('Problem'), |
4119 self.trUtf8('Problem'), |
4120 self.trUtf8( |
4120 self.trUtf8( |
4121 '<p>The file <b>{0}</b> does not exist or' |
4121 '<p>The file <b>{0}</b> does not exist or' |
4122 ' is zero length.</p>') |
4122 ' is zero length.</p>') |
4123 .format(fn)) |
4123 .format(fn)) |
4124 return |
4124 return |
4125 |
4125 |
4126 if Utilities.isMacPlatform(): |
4126 if Utilities.isMacPlatform(): |
4127 linguist, args = Utilities.prepareQtMacBundle( |
4127 linguist, args = Utilities.prepareQtMacBundle( |
4128 "linguist", version, args) |
4128 "linguist", version, args) |
4277 self, |
4277 self, |
4278 self.trUtf8('Problem'), |
4278 self.trUtf8('Problem'), |
4279 self.trUtf8( |
4279 self.trUtf8( |
4280 '<p>The file <b>{0}</b> does not exist or' |
4280 '<p>The file <b>{0}</b> does not exist or' |
4281 ' is zero length.</p>') |
4281 ' is zero length.</p>') |
4282 .format(fn)) |
4282 .format(fn)) |
4283 return |
4283 return |
4284 except EnvironmentError: |
4284 except EnvironmentError: |
4285 E5MessageBox.critical( |
4285 E5MessageBox.critical( |
4286 self, |
4286 self, |
4287 self.trUtf8('Problem'), |
4287 self.trUtf8('Problem'), |
4288 self.trUtf8( |
4288 self.trUtf8( |
4289 '<p>The file <b>{0}</b> does not exist or' |
4289 '<p>The file <b>{0}</b> does not exist or' |
4290 ' is zero length.</p>') |
4290 ' is zero length.</p>') |
4291 .format(fn)) |
4291 .format(fn)) |
4292 return |
4292 return |
4293 |
4293 |
4294 if not os.path.isfile(viewer) or \ |
4294 if not os.path.isfile(viewer) or \ |
4295 not proc.startDetached(sys.executable, args): |
4295 not proc.startDetached(sys.executable, args): |
4296 E5MessageBox.critical( |
4296 E5MessageBox.critical( |
4328 self, |
4328 self, |
4329 self.trUtf8('Problem'), |
4329 self.trUtf8('Problem'), |
4330 self.trUtf8( |
4330 self.trUtf8( |
4331 '<p>The file <b>{0}</b> does not exist or' |
4331 '<p>The file <b>{0}</b> does not exist or' |
4332 ' is zero length.</p>') |
4332 ' is zero length.</p>') |
4333 .format(fn)) |
4333 .format(fn)) |
4334 return |
4334 return |
4335 except EnvironmentError: |
4335 except EnvironmentError: |
4336 if not ignore: |
4336 if not ignore: |
4337 E5MessageBox.critical( |
4337 E5MessageBox.critical( |
4338 self, |
4338 self, |
4339 self.trUtf8('Problem'), |
4339 self.trUtf8('Problem'), |
4340 self.trUtf8( |
4340 self.trUtf8( |
4341 '<p>The file <b>{0}</b> does not exist or' |
4341 '<p>The file <b>{0}</b> does not exist or' |
4342 ' is zero length.</p>') |
4342 ' is zero length.</p>') |
4343 .format(fn)) |
4343 .format(fn)) |
4344 return |
4344 return |
4345 |
4345 |
4346 if not os.path.isfile(viewer) or \ |
4346 if not os.path.isfile(viewer) or \ |
4347 not proc.startDetached(sys.executable, args): |
4347 not proc.startDetached(sys.executable, args): |
4348 E5MessageBox.critical( |
4348 E5MessageBox.critical( |
4450 |
4450 |
4451 E5MessageBox.information( |
4451 E5MessageBox.information( |
4452 self, |
4452 self, |
4453 self.trUtf8("External Tools"), |
4453 self.trUtf8("External Tools"), |
4454 self.trUtf8("""No toolgroup entry '{0}' found.""") |
4454 self.trUtf8("""No toolgroup entry '{0}' found.""") |
4455 .format(toolGroupName) |
4455 .format(toolGroupName) |
4456 ) |
4456 ) |
4457 |
4457 |
4458 def __toolExecute(self, act): |
4458 def __toolExecute(self, act): |
4459 """ |
4459 """ |
4460 Private slot to execute a particular tool. |
4460 Private slot to execute a particular tool. |
4616 E5MessageBox.warning( |
4616 E5MessageBox.warning( |
4617 self, |
4617 self, |
4618 self.trUtf8("Documentation Missing"), |
4618 self.trUtf8("Documentation Missing"), |
4619 self.trUtf8("""<p>The documentation starting point""" |
4619 self.trUtf8("""<p>The documentation starting point""" |
4620 """ "<b>{0}</b>" could not be found.</p>""") |
4620 """ "<b>{0}</b>" could not be found.</p>""") |
4621 .format(home)) |
4621 .format(home)) |
4622 return |
4622 return |
4623 |
4623 |
4624 if not home.endswith(".chm"): |
4624 if not home.endswith(".chm"): |
4625 if Utilities.isWindowsPlatform(): |
4625 if Utilities.isWindowsPlatform(): |
4626 home = "file:///" + Utilities.fromNativeSeparators(home) |
4626 home = "file:///" + Utilities.fromNativeSeparators(home) |
4673 E5MessageBox.warning( |
4673 E5MessageBox.warning( |
4674 self, |
4674 self, |
4675 self.trUtf8("Documentation Missing"), |
4675 self.trUtf8("Documentation Missing"), |
4676 self.trUtf8("""<p>The documentation starting point""" |
4676 self.trUtf8("""<p>The documentation starting point""" |
4677 """ "<b>{0}</b>" could not be found.</p>""") |
4677 """ "<b>{0}</b>" could not be found.</p>""") |
4678 .format(home)) |
4678 .format(home)) |
4679 return |
4679 return |
4680 |
4680 |
4681 if not home.endswith(".chm"): |
4681 if not home.endswith(".chm"): |
4682 if Utilities.isWindowsPlatform(): |
4682 if Utilities.isWindowsPlatform(): |
4683 home = "file:///" + Utilities.fromNativeSeparators(home) |
4683 home = "file:///" + Utilities.fromNativeSeparators(home) |
4742 E5MessageBox.warning( |
4742 E5MessageBox.warning( |
4743 self, |
4743 self, |
4744 self.trUtf8("Documentation Missing"), |
4744 self.trUtf8("Documentation Missing"), |
4745 self.trUtf8("""<p>The documentation starting point""" |
4745 self.trUtf8("""<p>The documentation starting point""" |
4746 """ "<b>{0}</b>" could not be found.</p>""") |
4746 """ "<b>{0}</b>" could not be found.</p>""") |
4747 .format(home)) |
4747 .format(home)) |
4748 return |
4748 return |
4749 |
4749 |
4750 if Utilities.isWindowsPlatform(): |
4750 if Utilities.isWindowsPlatform(): |
4751 home = "file:///" + Utilities.fromNativeSeparators(home) |
4751 home = "file:///" + Utilities.fromNativeSeparators(home) |
4752 else: |
4752 else: |
4800 E5MessageBox.warning( |
4800 E5MessageBox.warning( |
4801 self, |
4801 self, |
4802 self.trUtf8("Documentation Missing"), |
4802 self.trUtf8("Documentation Missing"), |
4803 self.trUtf8("""<p>The documentation starting point""" |
4803 self.trUtf8("""<p>The documentation starting point""" |
4804 """ "<b>{0}</b>" could not be found.</p>""") |
4804 """ "<b>{0}</b>" could not be found.</p>""") |
4805 .format(home)) |
4805 .format(home)) |
4806 return |
4806 return |
4807 |
4807 |
4808 if Utilities.isWindowsPlatform(): |
4808 if Utilities.isWindowsPlatform(): |
4809 home = "file:///" + Utilities.fromNativeSeparators(home) |
4809 home = "file:///" + Utilities.fromNativeSeparators(home) |
4810 else: |
4810 else: |
4862 E5MessageBox.warning( |
4862 E5MessageBox.warning( |
4863 self, |
4863 self, |
4864 self.trUtf8("Documentation Missing"), |
4864 self.trUtf8("Documentation Missing"), |
4865 self.trUtf8("""<p>The documentation starting point""" |
4865 self.trUtf8("""<p>The documentation starting point""" |
4866 """ "<b>{0}</b>" could not be found.</p>""") |
4866 """ "<b>{0}</b>" could not be found.</p>""") |
4867 .format(home)) |
4867 .format(home)) |
4868 return |
4868 return |
4869 |
4869 |
4870 if Utilities.isWindowsPlatform(): |
4870 if Utilities.isWindowsPlatform(): |
4871 home = "file:///" + Utilities.fromNativeSeparators(home) |
4871 home = "file:///" + Utilities.fromNativeSeparators(home) |
4872 else: |
4872 else: |
4898 E5MessageBox.warning( |
4898 E5MessageBox.warning( |
4899 self, |
4899 self, |
4900 self.trUtf8("Documentation Missing"), |
4900 self.trUtf8("Documentation Missing"), |
4901 self.trUtf8("""<p>The documentation starting point""" |
4901 self.trUtf8("""<p>The documentation starting point""" |
4902 """ "<b>{0}</b>" could not be found.</p>""") |
4902 """ "<b>{0}</b>" could not be found.</p>""") |
4903 .format(home)) |
4903 .format(home)) |
4904 return |
4904 return |
4905 |
4905 |
4906 if Utilities.isWindowsPlatform(): |
4906 if Utilities.isWindowsPlatform(): |
4907 home = "file:///" + Utilities.fromNativeSeparators(home) |
4907 home = "file:///" + Utilities.fromNativeSeparators(home) |
4908 else: |
4908 else: |
4946 E5MessageBox.warning( |
4946 E5MessageBox.warning( |
4947 self, |
4947 self, |
4948 self.trUtf8("Documentation Missing"), |
4948 self.trUtf8("Documentation Missing"), |
4949 self.trUtf8("""<p>The documentation starting point""" |
4949 self.trUtf8("""<p>The documentation starting point""" |
4950 """ "<b>{0}</b>" could not be found.</p>""") |
4950 """ "<b>{0}</b>" could not be found.</p>""") |
4951 .format(home)) |
4951 .format(home)) |
4952 return |
4952 return |
4953 |
4953 |
4954 if Utilities.isWindowsPlatform(): |
4954 if Utilities.isWindowsPlatform(): |
4955 home = "file:///" + Utilities.fromNativeSeparators(home) |
4955 home = "file:///" + Utilities.fromNativeSeparators(home) |
4956 else: |
4956 else: |
5372 E5MessageBox.critical( |
5372 E5MessageBox.critical( |
5373 self, |
5373 self, |
5374 self.trUtf8("Save tasks"), |
5374 self.trUtf8("Save tasks"), |
5375 self.trUtf8( |
5375 self.trUtf8( |
5376 "<p>The tasks file <b>{0}</b> could not be written.</p>") |
5376 "<p>The tasks file <b>{0}</b> could not be written.</p>") |
5377 .format(fn)) |
5377 .format(fn)) |
5378 return |
5378 return |
5379 |
5379 |
5380 from E5XML.TasksWriter import TasksWriter |
5380 from E5XML.TasksWriter import TasksWriter |
5381 TasksWriter(f, False).writeXML() |
5381 TasksWriter(f, False).writeXML() |
5382 f.close() |
5382 f.close() |
5398 E5MessageBox.critical( |
5398 E5MessageBox.critical( |
5399 self, |
5399 self, |
5400 self.trUtf8("Read tasks"), |
5400 self.trUtf8("Read tasks"), |
5401 self.trUtf8( |
5401 self.trUtf8( |
5402 "<p>The tasks file <b>{0}</b> could not be read.</p>") |
5402 "<p>The tasks file <b>{0}</b> could not be read.</p>") |
5403 .format(fn)) |
5403 .format(fn)) |
5404 |
5404 |
5405 def __writeSession(self): |
5405 def __writeSession(self): |
5406 """ |
5406 """ |
5407 Private slot to write the session data to an XML file (.e4s). |
5407 Private slot to write the session data to an XML file (.e4s). |
5408 """ |
5408 """ |
5416 E5MessageBox.critical( |
5416 E5MessageBox.critical( |
5417 self, |
5417 self, |
5418 self.trUtf8("Save session"), |
5418 self.trUtf8("Save session"), |
5419 self.trUtf8( |
5419 self.trUtf8( |
5420 "<p>The session file <b>{0}</b> could not be written.</p>") |
5420 "<p>The session file <b>{0}</b> could not be written.</p>") |
5421 .format(fn)) |
5421 .format(fn)) |
5422 |
5422 |
5423 def __readSession(self): |
5423 def __readSession(self): |
5424 """ |
5424 """ |
5425 Private slot to read in the session file (.e4s). |
5425 Private slot to read in the session file (.e4s). |
5426 """ |
5426 """ |
5429 E5MessageBox.critical( |
5429 E5MessageBox.critical( |
5430 self, |
5430 self, |
5431 self.trUtf8("Read session"), |
5431 self.trUtf8("Read session"), |
5432 self.trUtf8( |
5432 self.trUtf8( |
5433 "<p>The session file <b>{0}</b> could not be read.</p>") |
5433 "<p>The session file <b>{0}</b> could not be read.</p>") |
5434 .format(fn)) |
5434 .format(fn)) |
5435 return |
5435 return |
5436 |
5436 |
5437 f = QFile(fn) |
5437 f = QFile(fn) |
5438 if f.open(QIODevice.ReadOnly): |
5438 if f.open(QIODevice.ReadOnly): |
5439 from E5XML.SessionReader import SessionReader |
5439 from E5XML.SessionReader import SessionReader |
5444 E5MessageBox.critical( |
5444 E5MessageBox.critical( |
5445 self, |
5445 self, |
5446 self.trUtf8("Read session"), |
5446 self.trUtf8("Read session"), |
5447 self.trUtf8( |
5447 self.trUtf8( |
5448 "<p>The session file <b>{0}</b> could not be read.</p>") |
5448 "<p>The session file <b>{0}</b> could not be read.</p>") |
5449 .format(fn)) |
5449 .format(fn)) |
5450 |
5450 |
5451 def showFindFileByNameDialog(self): |
5451 def showFindFileByNameDialog(self): |
5452 """ |
5452 """ |
5453 Public slot to show the Find File by Name dialog. |
5453 Public slot to show the Find File by Name dialog. |
5454 """ |
5454 """ |
5626 else: |
5626 else: |
5627 E5MessageBox.information( |
5627 E5MessageBox.information( |
5628 self, |
5628 self, |
5629 self.trUtf8("Drop Error"), |
5629 self.trUtf8("Drop Error"), |
5630 self.trUtf8("""<p><b>{0}</b> is not a file.</p>""") |
5630 self.trUtf8("""<p><b>{0}</b> is not a file.</p>""") |
5631 .format(fname)) |
5631 .format(fname)) |
5632 |
5632 |
5633 self.inDragDrop = False |
5633 self.inDragDrop = False |
5634 |
5634 |
5635 ########################################################## |
5635 ########################################################## |
5636 ## Below are methods needed for shutting down the IDE |
5636 ## Below are methods needed for shutting down the IDE |
5765 self.__versionCheckCanceled = False |
5765 self.__versionCheckCanceled = False |
5766 if manual: |
5766 if manual: |
5767 if self.__versionCheckProgress is None: |
5767 if self.__versionCheckProgress is None: |
5768 self.__versionCheckProgress = \ |
5768 self.__versionCheckProgress = \ |
5769 QProgressDialog("", self.trUtf8("&Cancel"), |
5769 QProgressDialog("", self.trUtf8("&Cancel"), |
5770 0, len(self.__httpAlternatives), self) |
5770 0, len(self.__httpAlternatives), self) |
5771 self.__versionCheckProgress.setMinimumDuration(0) |
5771 self.__versionCheckProgress.setMinimumDuration(0) |
5772 self.__versionCheckProgress.canceled.connect( |
5772 self.__versionCheckProgress.canceled.connect( |
5773 self.__versionsDownloadCanceled) |
5773 self.__versionsDownloadCanceled) |
5774 self.__versionCheckProgress.setLabelText( |
5774 self.__versionCheckProgress.setLabelText( |
5775 self.trUtf8("Trying host {0}").format(url.host())) |
5775 self.trUtf8("Trying host {0}").format(url.host())) |
5882 self.trUtf8("Update available"), |
5882 self.trUtf8("Update available"), |
5883 self.trUtf8( |
5883 self.trUtf8( |
5884 """The update to <b>{0}</b> of eric5 is""" |
5884 """The update to <b>{0}</b> of eric5 is""" |
5885 """ available at <b>{1}</b>. Would you like to""" |
5885 """ available at <b>{1}</b>. Would you like to""" |
5886 """ get it?""") |
5886 """ get it?""") |
5887 .format(versions[2], versions[3]), |
5887 .format(versions[2], versions[3]), |
5888 yesDefault=True) |
5888 yesDefault=True) |
5889 url = res and versions[3] or '' |
5889 url = res and versions[3] or '' |
5890 elif versions[0] > Version: |
5890 elif versions[0] > Version: |
5891 res = E5MessageBox.yesNo( |
5891 res = E5MessageBox.yesNo( |
5892 self, |
5892 self, |
5893 self.trUtf8("Update available"), |
5893 self.trUtf8("Update available"), |
5894 self.trUtf8( |
5894 self.trUtf8( |
5895 """The update to <b>{0}</b> of eric5 is""" |
5895 """The update to <b>{0}</b> of eric5 is""" |
5896 """ available at <b>{1}</b>. Would you like to""" |
5896 """ available at <b>{1}</b>. Would you like to""" |
5897 """ get it?""") |
5897 """ get it?""") |
5898 .format(versions[0], versions[1]), |
5898 .format(versions[0], versions[1]), |
5899 yesDefault=True) |
5899 yesDefault=True) |
5900 url = res and versions[1] or '' |
5900 url = res and versions[1] or '' |
5901 else: |
5901 else: |
5902 if self.manualUpdatesCheck: |
5902 if self.manualUpdatesCheck: |
5903 E5MessageBox.information( |
5903 E5MessageBox.information( |
5914 self.trUtf8("Update available"), |
5914 self.trUtf8("Update available"), |
5915 self.trUtf8( |
5915 self.trUtf8( |
5916 """The update to <b>{0}</b> of eric5 is""" |
5916 """The update to <b>{0}</b> of eric5 is""" |
5917 """ available at <b>{1}</b>. Would you like""" |
5917 """ available at <b>{1}</b>. Would you like""" |
5918 """ to get it?""") |
5918 """ to get it?""") |
5919 .format(versions[0], versions[1]), |
5919 .format(versions[0], versions[1]), |
5920 yesDefault=True) |
5920 yesDefault=True) |
5921 url = res and versions[1] or '' |
5921 url = res and versions[1] or '' |
5922 else: |
5922 else: |
5923 if self.manualUpdatesCheck: |
5923 if self.manualUpdatesCheck: |
5924 E5MessageBox.information( |
5924 E5MessageBox.information( |
5961 |
5961 |
5962 versionText += """<tr><td>{0}</td><td><a href="{1}">{2}</a>""" \ |
5962 versionText += """<tr><td>{0}</td><td><a href="{1}">{2}</a>""" \ |
5963 """</td></tr>""".format( |
5963 """</td></tr>""".format( |
5964 versions[line], versions[line + 1], |
5964 versions[line], versions[line + 1], |
5965 'sourceforge' in versions[line + 1] and |
5965 'sourceforge' in versions[line + 1] and |
5966 "SourceForge" or versions[line + 1]) |
5966 "SourceForge" or versions[line + 1]) |
5967 line += 2 |
5967 line += 2 |
5968 versionText += self.trUtf8("""</table>""") |
5968 versionText += self.trUtf8("""</table>""") |
5969 |
5969 |
5970 E5MessageBox.about(self, Program, versionText) |
5970 E5MessageBox.about(self, Program, versionText) |
5971 |
5971 |