import os.path\r
import codecs\r
import locale\r
+import urllib\r
+import xml.etree.ElementTree\r
import webbrowser\r
from PySide import QtCore, QtGui\r
import yaml\r
_undomanager = None\r
\r
projecturl = "http://sourceforge.jp/projects/pydun/"\r
+projectrssurl = "http://sourceforge.jp/projects/pydun/releases/rss"\r
projectversion = "1.0.4"\r
\r
\r
self.backcolorbox.setSizePolicy(\r
QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)\r
\r
+ latestversion = getlatestversion()\r
+ if latestversion != projectversion:\r
+ self.update = QtGui.QLabel(self)\r
+ self.update.setAlignment(QtCore.Qt.AlignTop | QtCore.Qt.AlignLeft)\r
+ self.update.setText(u"<a href='{url}'>最新のPydun({ver})がダウンロードできます。</a>".format(url=projecturl, ver=latestversion))\r
+ self.update.setOpenExternalLinks(True)\r
\r
layout = QtGui.QGridLayout(self)\r
layout.addWidget(scrollarea, 0, 0, 1, 3)\r
layout.addWidget(self.backcolorbutton, 3, 1, 1, 2)\r
layout.addWidget(self.setbackcolorbutton, 4, 1, 1, 1)\r
layout.addWidget(self.backcolorbox, 4, 2, 1, 1)\r
+ if latestversion != projectversion:\r
+ layout.addWidget(self.update, 5, 0, 1, 3)\r
\r
self.setLayout(layout)\r
\r
def basedir():\r
return os.path.dirname(os.path.abspath(sys.argv[0]))\r
\r
+def getlatestversion():\r
+ try:\r
+ rss = urllib.urlopen(projectrssurl)\r
+ rssstring = rss.read()\r
+ rsstree = xml.etree.ElementTree.fromstring(rssstring)\r
+ item = rsstree.find("channel/item/title")\r
+ ver = (item.text.split(" "))[2]\r
+ rss.close()\r
+ except:\r
+ ver = projectversion\r
+ return ver\r
+\r
+\r
def main():\r
loadconfig()\r
app = QtGui.QApplication(sys.argv)\r