OSDN Git Service

1.2.0
[pydun/Pydun.git] / Pydun.py
index 482d04e..0bf3e0f 100644 (file)
--- a/Pydun.py
+++ b/Pydun.py
@@ -15,7 +15,7 @@ import locale
 import urllib.request, urllib.parse, urllib.error\r
 import xml.etree.ElementTree\r
 import webbrowser\r
-from PySide import QtCore, QtGui\r
+from PySide2 import QtCore, QtGui, QtWidgets\r
 import yaml\r
 \r
 \r
@@ -23,12 +23,12 @@ _mapengine = None
 _mapimages = None\r
 _undomanager = None\r
 \r
-projecturl = "http://osdn.jp/projects/pydun/"\r
-projectrssurl = "http://osdn.jp/projects/pydun/releases/rss"\r
-projectversion = "1.1.0"\r
+projecturl = "http://ja.osdn.net/projects/pydun/"\r
+projectrssurl = "http://ja.osdn.net/projects/pydun/releases/rss"\r
+projectversion = "1.2.0"\r
+defaultfontname = "Yu Gothic UI"\r
 \r
-\r
-class MainWindow(QtGui.QMainWindow):\r
+class MainWindow(QtWidgets.QMainWindow):\r
 \r
     def __init__(self, parent=None):\r
         global _mapengine\r
@@ -49,7 +49,7 @@ class MainWindow(QtGui.QMainWindow):
         self.mainframe = MainFrame(self)\r
         self.setCentralWidget(self.mainframe)\r
 \r
-        self.statusbar = QtGui.QStatusBar(self)\r
+        self.statusbar = QtWidgets.QStatusBar(self)\r
         self.statusbar.showMessage("")\r
         self.setStatusBar(self.statusbar)\r
         if "windowSize" in config:\r
@@ -63,49 +63,49 @@ class MainWindow(QtGui.QMainWindow):
         #File menu\r
         filemenu = self.menuBar().addMenu("ファイル(&F)")\r
 \r
-        newact = QtGui.QAction("新規(&N)", self)\r
+        newact = QtWidgets.QAction("新規(&N)", self)\r
         newact.triggered.connect(self.new_triggered)\r
         newact.setShortcut(QtGui.QKeySequence.New)\r
         filemenu.addAction(newact)\r
 \r
-        openact = QtGui.QAction("開く(&O)...", self)\r
+        openact = QtWidgets.QAction("開く(&O)...", self)\r
         openact.triggered.connect(self.open_triggered)\r
         openact.setShortcut(QtGui.QKeySequence.Open)\r
         filemenu.addAction(openact)\r
 \r
-        saveact = QtGui.QAction("上書き保存(&S)", self)\r
+        saveact = QtWidgets.QAction("上書き保存(&S)", self)\r
         saveact.triggered.connect(self.save_triggered)\r
         saveact.setShortcut(QtGui.QKeySequence.Save)\r
         filemenu.addAction(saveact)\r
 \r
-        saveasact = QtGui.QAction("名前をつけて保存(&A)...", self)\r
+        saveasact = QtWidgets.QAction("名前をつけて保存(&A)...", self)\r
         saveasact.triggered.connect(self.saveas_triggered)\r
         saveasact.setShortcut(QtGui.QKeySequence.SaveAs)\r
         filemenu.addAction(saveasact)\r
 \r
-        exitact = QtGui.QAction("終了(&E)", self)\r
+        exitact = QtWidgets.QAction("終了(&E)", self)\r
         exitact.triggered.connect(self.exit_triggered)\r
         exitact.setShortcut(QtGui.QKeySequence.Quit)\r
         filemenu.addAction(exitact)\r
 \r
         #Edit menu\r
         editmenu = self.menuBar().addMenu("編集(&E)")\r
-        self.undoact = QtGui.QAction("元に戻す(&U)", self)\r
+        self.undoact = QtWidgets.QAction("元に戻す(&U)", self)\r
         self.undoact.triggered.connect(self.undo_triggered)\r
         self.undoact.setShortcut(QtGui.QKeySequence.Undo)\r
         editmenu.addAction(self.undoact)\r
-        self.redoact = QtGui.QAction("やり直し(&R)", self)\r
+        self.redoact = QtWidgets.QAction("やり直し(&R)", self)\r
         self.redoact.triggered.connect(self.redo_triggered)\r
         self.redoact.setShortcut(QtGui.QKeySequence.Redo)\r
         editmenu.addAction(self.redoact)\r
         editmenu.addSeparator()\r
-        setmapsizeact = QtGui.QAction("マップのサイズ(&S)", self)\r
+        setmapsizeact = QtWidgets.QAction("マップのサイズ(&S)", self)\r
         setmapsizeact.triggered.connect(self.setmapsize_triggered)\r
         editmenu.addAction(setmapsizeact)\r
-        setorigineact = QtGui.QAction("座標設定(&O)", self)\r
+        setorigineact = QtWidgets.QAction("座標設定(&O)", self)\r
         setorigineact.triggered.connect(self.setorigine_triggered)\r
         editmenu.addAction(setorigineact)\r
-        wallmenustringact = QtGui.QAction("壁メニューに文字を表示する(&W)", self)\r
+        wallmenustringact = QtWidgets.QAction("壁メニューに文字を表示する(&W)", self)\r
         wallmenustringact.setCheckable(True)\r
         wallmenustringact.setChecked(config.get("showWallMenuString", False))\r
         wallmenustringact.triggered.connect(self.togglewallmenustring_triggered)\r
@@ -113,14 +113,14 @@ class MainWindow(QtGui.QMainWindow):
 \r
         #Help menu\r
         helpmenu = self.menuBar().addMenu("ヘルプ(&H)")\r
-        tutorialact = QtGui.QAction("ヘルプの表示(&H)", self)\r
+        tutorialact = QtWidgets.QAction("ヘルプの表示(&H)", self)\r
         tutorialact.triggered.connect(self.tutorial_triggered)\r
         tutorialact.setShortcut(QtGui.QKeySequence.HelpContents)\r
         helpmenu.addAction(tutorialact)\r
-        projectact = QtGui.QAction("プロジェクトのWebサイト(&W)", self)\r
+        projectact = QtWidgets.QAction("プロジェクトのWebサイト(&W)", self)\r
         projectact.triggered.connect(self.project_triggered)\r
         helpmenu.addAction(projectact)\r
-        aboutact = QtGui.QAction("Pydunについて(&A)...", self)\r
+        aboutact = QtWidgets.QAction("Pydunについて(&A)...", self)\r
         aboutact.triggered.connect(self.about_triggered)\r
         helpmenu.addAction(aboutact)\r
 \r
@@ -167,9 +167,9 @@ class MainWindow(QtGui.QMainWindow):
         if not _undomanager.commited:\r
             dlg = PydunAskSaveDialog(self, self.getfilename(_mapengine.filename))\r
             ret = dlg.exec_()\r
-            if ret == QtGui.QMessageBox.Cancel:\r
+            if ret == QtWidgets.QMessageBox.Cancel:\r
                 return False\r
-            elif ret == QtGui.QMessageBox.Save:\r
+            elif ret == QtWidgets.QMessageBox.Save:\r
                 saved = self.save_triggered()\r
                 if not saved:\r
                     return False\r
@@ -183,7 +183,7 @@ class MainWindow(QtGui.QMainWindow):
                 d = os.path.dirname(_mapengine.filename)\r
             except:\r
                 pass\r
-            filename = QtGui.QFileDialog.getOpenFileName(\r
+            filename = QtWidgets.QFileDialog.getOpenFileName(\r
                 dir=d,\r
                 filter="*.pydun;;*.*", selectedFilter="*.pydun")\r
             if filename[0] != "":\r
@@ -214,7 +214,7 @@ class MainWindow(QtGui.QMainWindow):
             d = os.path.dirname(_mapengine.filename)\r
         except:\r
             pass\r
-        filename = QtGui.QFileDialog.getSaveFileName(\r
+        filename = QtWidgets.QFileDialog.getSaveFileName(\r
             dir=d,\r
             filter="*.pydun;;*.*", selectedFilter="*.pydun")\r
         if filename[0] != "":\r
@@ -267,13 +267,13 @@ class MainWindow(QtGui.QMainWindow):
     def setorigine_triggered(self):\r
         title = "座標設定"\r
         if self.mainframe.mapframe.setoriginemode:\r
-            QtGui.QMessageBox.information(\r
-                self, title, "座標設定を中止します。", QtGui.QMessageBox.Ok)\r
+            QtWidgets.QMessageBox.information(\r
+                self, title, "座標設定を中止します。", QtWidgets.QMessageBox.Ok)\r
             self.mainframe.mapframe.setoriginemode = False\r
         else:\r
-            if QtGui.QMessageBox.Ok == QtGui.QMessageBox.information(\r
+            if QtWidgets.QMessageBox.Ok == QtWidgets.QMessageBox.information(\r
                 self, title, "基準にする地点をクリックしてください。",\r
-                (QtGui.QMessageBox.Ok| QtGui.QMessageBox.Cancel)):\r
+                (QtWidgets.QMessageBox.Ok| QtWidgets.QMessageBox.Cancel)):\r
                 self.mainframe.mapframe.setoriginemode = True\r
 \r
     @QtCore.Slot()\r
@@ -281,7 +281,7 @@ class MainWindow(QtGui.QMainWindow):
         dlg = SetSizeDialog(self)\r
         dlg.setoriginalsize(_mapengine.width, _mapengine.height)\r
         dlg.exec_()\r
-        if dlg.result() == QtGui.QDialog.Accepted:\r
+        if dlg.result() == QtWidgets.QDialog.Accepted:\r
             top, bottom, left, right = dlg.getsize()\r
             _mapengine.changesize(top, bottom, left, right)\r
             _undomanager.save(_mapengine.savestring())\r
@@ -291,9 +291,9 @@ class MainWindow(QtGui.QMainWindow):
     def togglewallmenustring_triggered(self):\r
         global config\r
         config["showWallMenuString"] = not config.get("showWallMenuString", False)\r
-        QtGui.QMessageBox.information(\r
+        QtWidgets.QMessageBox.information(\r
                 self, "壁メニューに文字を表示する", "表示の切替は再起動後に有効になります。",\r
-                (QtGui.QMessageBox.Ok))\r
+                (QtWidgets.QMessageBox.Ok))\r
 \r
     @QtCore.Slot()\r
     def tutorial_triggered(self):\r
@@ -306,7 +306,7 @@ class MainWindow(QtGui.QMainWindow):
 \r
     @QtCore.Slot()\r
     def about_triggered(self):\r
-        QtGui.QMessageBox.about(self, "Pydun",\r
+        QtWidgets.QMessageBox.about(self, "Pydun",\r
         "<h1>Pydun.py "+ projectversion + "</h1>"\r
         "<p>Copyright (c) 2013-2015 WATAHIKI Hiroyuki</p>"\r
         "<p>url: <a href='" + projecturl + "'>" + projecturl + "</a></p>"\r
@@ -315,63 +315,66 @@ class MainWindow(QtGui.QMainWindow):
         "<p>blog: <a href='http://hrwatahiki.blogspot.jp/'>作業記録</a></p>"\r
         "<p>このソフトウェアはMITライセンスです。</p>"\r
         "<p>このソフトウェアは以下のソフトウェアを使用しています。: "\r
-        "Python, PySide, PyYAML "\r
+        "Python, PySide2, PyYAML "\r
         "これらの作成者に深く感謝いたします。</p>"\r
         "<p>詳細はLICENCE.txtを参照してください。</p>")\r
 \r
 \r
-class MainFrame(QtGui.QFrame):\r
+class MainFrame(QtWidgets.QFrame):\r
     create_wall_menu_triggered_signal = QtCore.Signal(int, int, str, int)\r
 \r
     def __init__(self, parent=None):\r
         super(MainFrame, self).__init__(parent)\r
 \r
+        f = QtGui.QFont(defaultfontname, 9)\r
+        self.setFont(f)\r
+\r
         self.mapframe = MapFrame(self)\r
-        scrollarea = QtGui.QScrollArea(self)\r
+        scrollarea = QtWidgets.QScrollArea(self)\r
         scrollarea.setWidget(self.mapframe)\r
 \r
-        self.detail = QtGui.QLabel(self)\r
+        self.detail = QtWidgets.QLabel(self)\r
         self.detail.setAlignment(QtCore.Qt.AlignTop | QtCore.Qt.AlignLeft)\r
         self.detail.setText("")\r
         self.detail.setMaximumHeight(100)\r
         self.detail.setMinimumHeight(100)\r
 \r
-        self.boxdrawbutton = QtGui.QRadioButton(self)\r
+        self.boxdrawbutton = QtWidgets.QRadioButton(self)\r
         self.boxdrawbutton.setText("ボックス形式で壁を描画(&B)")\r
         self.boxdrawbutton.setChecked(True)\r
         self.boxdrawbutton.setSizePolicy(\r
-            QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)\r
+            QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)\r
 \r
-        self.growdrawbutton = QtGui.QRadioButton(self)\r
+        self.growdrawbutton = QtWidgets.QRadioButton(self)\r
         self.growdrawbutton.setText("足跡形式で壁を描画(&G)")\r
         self.growdrawbutton.setChecked(False)\r
         self.growdrawbutton.setSizePolicy(\r
-            QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)\r
+            QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)\r
 \r
-        self.backcolorbutton = QtGui.QRadioButton(self)\r
+        self.backcolorbutton = QtWidgets.QRadioButton(self)\r
         self.backcolorbutton.setText("背景色(&C)")\r
         self.backcolorbutton.setChecked(False)\r
         self.backcolorbutton.setSizePolicy(\r
-            QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)\r
+            QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)\r
 \r
-        self.setbackcolorbutton = QtGui.QPushButton(self)\r
+        self.setbackcolorbutton = QtWidgets.QPushButton(self)\r
         self.setbackcolorbutton.setText("背景色を設定(&S)...")\r
         self.setbackcolorbutton.setSizePolicy(\r
-            QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)\r
+            QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)\r
 \r
         self.backcolorbox = ColorBox(self)\r
         self.backcolorbox.setMinimumSize(30, 30)\r
         self.backcolorbox.setSizePolicy(\r
-            QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)\r
+            QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)\r
 \r
         latestversion = getlatestversion()\r
         if latestversion != projectversion:\r
-            self.update = QtGui.QLabel(self)\r
+            self.update = QtWidgets.QLabel(self)\r
             self.update.setAlignment(QtCore.Qt.AlignTop | QtCore.Qt.AlignLeft)\r
             self.update.setText("<a href='{url}'>最新のPydun({ver})がダウンロードできます。</a>".format(url=projecturl, ver=latestversion))\r
             self.update.setOpenExternalLinks(True)\r
 \r
-        layout = QtGui.QGridLayout(self)\r
+        layout = QtWidgets.QGridLayout(self)\r
         layout.addWidget(scrollarea, 0, 0, 1, 3)\r
         layout.addWidget(self.detail, 1, 0, 4, 1)\r
         layout.addWidget(self.boxdrawbutton, 1, 1, 1, 2)\r
@@ -396,9 +399,9 @@ class MainFrame(QtGui.QFrame):
             self.setbackcolorbutton_clicked)\r
 \r
     def create_wall_menu(self, direction):\r
-        menu = QtGui.QMenu(self)\r
+        menu = QtWidgets.QMenu(self)\r
         for idx, img in enumerate(_mapimages.wall_icons):\r
-            act = QtGui.QAction(_mapimages.wall_texts[idx][direction], self)\r
+            act = QtWidgets.QAction(_mapimages.wall_texts[idx][direction], self)\r
             act.setIcon(img[direction])\r
 \r
             def triggerd(idx):\r
@@ -438,7 +441,7 @@ class MainFrame(QtGui.QFrame):
             dlg = SetOrigineDialog(self)\r
             dlg.setcurrent(_mapengine.viewx(x1), _mapengine.viewy(y1))\r
             dlg.exec_() #showでは処理がとまらない。\r
-            if dlg.result() == QtGui.QDialog.Accepted:\r
+            if dlg.result() == QtWidgets.QDialog.Accepted:\r
                 _mapengine.setoffset(\r
                     dlg.originex - _mapengine.viewx(x1) + _mapengine.offsetx,\r
                     dlg.originey - _mapengine.viewy(y1) + _mapengine.offsety\r
@@ -453,7 +456,7 @@ class MainFrame(QtGui.QFrame):
                 _mapengine.getmark(x1, y1), _mapengine.getdetail(x1, y1),\r
                 getcolorfromstring(_mapengine.getforecolor(x1, y1)))\r
             dlg.exec_() #showでは処理がとまらない。\r
-            if dlg.result() == QtGui.QDialog.Accepted:\r
+            if dlg.result() == QtWidgets.QDialog.Accepted:\r
                 forecolor = getcolorstring(dlg.forecolorbox.color)\r
                 _mapengine.setmark(x1, y1, dlg.marktext.text())\r
                 _mapengine.setdetail(x1, y1, dlg.detailtext.toPlainText())\r
@@ -484,12 +487,12 @@ class MainFrame(QtGui.QFrame):
         dlg.setCurrentColor(self.backcolorbox.color)\r
         dlg.exec_()\r
         config["customColor"] = dlg.config\r
-        if dlg.result() == QtGui.QDialog.Accepted:\r
+        if dlg.result() == QtWidgets.QDialog.Accepted:\r
             self.backcolorbox.color = dlg.currentColor()\r
             self.backcolorbutton.setChecked(True)\r
 \r
 \r
-class MapFrame(QtGui.QFrame):\r
+class MapFrame(QtWidgets.QFrame):\r
     mouse_moved = QtCore.Signal(int, int, int)\r
     mouse_released = QtCore.Signal(int, int, str)\r
     mouse_drag_released = QtCore.Signal(int, int, int, int, int)\r
@@ -498,6 +501,7 @@ class MapFrame(QtGui.QFrame):
 \r
     def __init__(self, parent=None):\r
         super(MapFrame, self).__init__(parent)\r
+        self.setFont = QtGui.QFont(defaultfontname, 9)\r
         self._pressedbutton = QtCore.Qt.MouseButton.NoButton\r
         self._x1 = 0\r
         self._y1 = 0\r
@@ -509,7 +513,7 @@ class MapFrame(QtGui.QFrame):
         self._py2 = 0\r
         self._dragging = False\r
         self.setoriginemode = False\r
-        self.setSizePolicy(QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)\r
+        self.setSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)\r
         self.resize(\r
             _mapimages.width * (_mapengine.width) + _mapimages.widthoffset * 2,\r
             _mapimages.height * (_mapengine.height) + _mapimages.heightoffset * 2\r
@@ -618,7 +622,7 @@ class MapFrame(QtGui.QFrame):
                 self._py2 = event.pos().y()\r
                 if (self._pressedbutton != QtCore.Qt.MouseButton.NoButton and\r
                     (event.pos() - self._pos1).manhattanLength() >=\r
-                     QtGui.QApplication.startDragDistance()):\r
+                     QtWidgets.QApplication.startDragDistance()):\r
                     self._dragging = True\r
                 self.mouse_moved.emit(self._x2, self._y2, event.buttons())\r
                 return True\r
@@ -677,7 +681,7 @@ class MapFrame(QtGui.QFrame):
             return False\r
 \r
 \r
-class ColorBox(QtGui.QFrame):\r
+class ColorBox(QtWidgets.QFrame):\r
     def __init__(self, parent=None):\r
         super(ColorBox, self).__init__(parent)\r
         self.color = QtGui.QColor(255, 255, 255)\r
@@ -690,49 +694,53 @@ class ColorBox(QtGui.QFrame):
         painter.drawRect(0, 0, self.width() - 1, self.height() - 1)\r
 \r
 \r
-class DetailDialog(QtGui.QDialog):\r
+class DetailDialog(QtWidgets.QDialog):\r
     def __init__(self, parent=None):\r
         super(DetailDialog, self).__init__(parent)\r
 \r
-        marklabel = QtGui.QLabel(self)\r
+        f = QtGui.QFont(defaultfontname, 9)\r
+        self.setFont(f)\r
+\r
+        marklabel = QtWidgets.QLabel(self)\r
         marklabel.setAlignment(QtCore.Qt.AlignVCenter | QtCore.Qt.AlignRight)\r
         marklabel.setText("マーク(&M)")\r
         marklabel.setSizePolicy(\r
-            QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)\r
+            QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)\r
 \r
-        self.marktext = QtGui.QLineEdit(self)\r
-        self.marktext.setMaxLength(1)\r
+        self.marktext = QtWidgets.QLineEdit(self)\r
+        self.marktext.setFont(f)\r
+        self.marktext.setMaxLength(2)\r
         self.marktext.setText("")\r
         self.marktext.setMinimumWidth(20)\r
         self.marktext.setSizePolicy(\r
-            QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)\r
+            QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)\r
         marklabel.setBuddy(self.marktext)\r
 \r
-        self.forecolorbutton = QtGui.QPushButton(self)\r
+        self.forecolorbutton = QtWidgets.QPushButton(self)\r
         self.forecolorbutton.setText("文字色(&C)...")\r
         self.forecolorbutton.clicked.connect(self.forecolorbutton_clicked)\r
 \r
         self.forecolorbox = ColorBox(self)\r
         self.forecolorbox.setMinimumSize(30, 30)\r
         self.forecolorbox.setSizePolicy(\r
-            QtGui.QSizePolicy.Fixed, QtGui.QSizePolicy.Fixed)\r
+            QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)\r
 \r
-        detaillabel = QtGui.QLabel(self)\r
+        detaillabel = QtWidgets.QLabel(self)\r
         detaillabel.setAlignment(QtCore.Qt.AlignTop | QtCore.Qt.AlignRight)\r
         detaillabel.setText("詳細(&D)")\r
 \r
-        self.detailtext = QtGui.QTextEdit(self)\r
+        self.detailtext = QtWidgets.QTextEdit(self)\r
         self.detailtext.setText("")\r
         detaillabel.setBuddy(self.detailtext)\r
 \r
-        self.buttonbox = QtGui.QDialogButtonBox(\r
-            QtGui.QDialogButtonBox.Ok | QtGui.QDialogButtonBox.Cancel)\r
+        self.buttonbox = QtWidgets.QDialogButtonBox(\r
+            QtWidgets.QDialogButtonBox.Ok | QtWidgets.QDialogButtonBox.Cancel)\r
         self.buttonbox.accepted.connect(self.accept)\r
         self.buttonbox.rejected.connect(self.reject)\r
-        self.buttonbox.button(QtGui.QDialogButtonBox.Ok).setText("OK")\r
-        self.buttonbox.button(QtGui.QDialogButtonBox.Cancel).setText("キャンセル")\r
+        self.buttonbox.button(QtWidgets.QDialogButtonBox.Ok).setText("OK")\r
+        self.buttonbox.button(QtWidgets.QDialogButtonBox.Cancel).setText("キャンセル")\r
 \r
-        layout = QtGui.QGridLayout()\r
+        layout = QtWidgets.QGridLayout()\r
         layout.addWidget(marklabel, 0, 0, 1, 1)\r
         layout.addWidget(self.marktext, 0, 1, 1, 1)\r
         layout.addWidget(self.forecolorbutton, 0, 2, 1, 1)\r
@@ -755,54 +763,58 @@ class DetailDialog(QtGui.QDialog):
         dlg.setCurrentColor(self.forecolorbox.color)\r
         dlg.exec_()\r
         config["customColor"] = dlg.config\r
-        if dlg.result() == QtGui.QDialog.Accepted:\r
+        if dlg.result() == QtWidgets.QDialog.Accepted:\r
             self.forecolorbox.color = dlg.currentColor()\r
 \r
 \r
-class SetOrigineDialog(QtGui.QDialog):\r
+class SetOrigineDialog(QtWidgets.QDialog):\r
     def __init__(self, parent=None):\r
         super(SetOrigineDialog, self).__init__(parent)\r
\r
+        f = QtGui.QFont(defaultfontname, 9)\r
+        self.setFont(f)\r
+\r
         self.setWindowTitle("座標設定")\r
 \r
-        promptlabel = QtGui.QLabel(self)\r
+        promptlabel = QtWidgets.QLabel(self)\r
         promptlabel.setAlignment(\r
             QtCore.Qt.AlignVCenter | QtCore.Qt.AlignLeft)\r
         promptlabel.setText("この地点の座標を入力してください。")\r
 \r
-        self.currentlabel = QtGui.QLabel(self)\r
+        self.currentlabel = QtWidgets.QLabel(self)\r
         self.currentlabel.setAlignment(\r
             QtCore.Qt.AlignVCenter | QtCore.Qt.AlignHCenter)\r
         self.currentlabel.setText("")\r
 \r
-        xlabel = QtGui.QLabel(self)\r
+        xlabel = QtWidgets.QLabel(self)\r
         xlabel.setAlignment(\r
             QtCore.Qt.AlignVCenter | QtCore.Qt.AlignRight)\r
         xlabel.setText("&X")\r
 \r
-        self.xbox = QtGui.QSpinBox(self)\r
+        self.xbox = QtWidgets.QSpinBox(self)\r
         self.xbox.setRange(-999, +999)\r
         self.xbox.setSingleStep(1)\r
         self.xbox.setValue(0)\r
         xlabel.setBuddy(self.xbox)\r
 \r
-        ylabel = QtGui.QLabel(self)\r
+        ylabel = QtWidgets.QLabel(self)\r
         ylabel.setAlignment(QtCore.Qt.AlignVCenter | QtCore.Qt.AlignRight)\r
         ylabel.setText("&Y")\r
 \r
-        self.ybox = QtGui.QSpinBox(self)\r
+        self.ybox = QtWidgets.QSpinBox(self)\r
         self.ybox.setRange(-999, +999)\r
         self.ybox.setSingleStep(1)\r
         self.ybox.setValue(0)\r
         ylabel.setBuddy(self.ybox)\r
 \r
-        self.buttonbox = QtGui.QDialogButtonBox(\r
-            QtGui.QDialogButtonBox.Ok | QtGui.QDialogButtonBox.Cancel)\r
+        self.buttonbox = QtWidgets.QDialogButtonBox(\r
+            QtWidgets.QDialogButtonBox.Ok | QtWidgets.QDialogButtonBox.Cancel)\r
         self.buttonbox.accepted.connect(self.accept)\r
         self.buttonbox.rejected.connect(self.reject)\r
-        self.buttonbox.button(QtGui.QDialogButtonBox.Ok).setText("OK")\r
-        self.buttonbox.button(QtGui.QDialogButtonBox.Cancel).setText("キャンセル")\r
+        self.buttonbox.button(QtWidgets.QDialogButtonBox.Ok).setText("OK")\r
+        self.buttonbox.button(QtWidgets.QDialogButtonBox.Cancel).setText("キャンセル")\r
 \r
-        layout = QtGui.QGridLayout()\r
+        layout = QtWidgets.QGridLayout()\r
         layout.addWidget(promptlabel, 0, 0, 1, 4)\r
         layout.addWidget(self.currentlabel, 1, 0, 1, 4)\r
         layout.addWidget(xlabel, 2, 0, 1, 1)\r
@@ -827,64 +839,68 @@ class SetOrigineDialog(QtGui.QDialog):
         return self.ybox.value()\r
 \r
 \r
-class SetSizeDialog(QtGui.QDialog):\r
+class SetSizeDialog(QtWidgets.QDialog):\r
     def __init__(self, parent=None):\r
         super(SetSizeDialog, self).__init__(parent)\r
+\r
+        f = QtGui.QFont(defaultfontname, 9)\r
+        self.setFont(f)\r
+\r
         self.setWindowTitle("マップのサイズ")\r
 \r
-        self.topbutton = QtGui.QRadioButton(self)\r
+        self.topbutton = QtWidgets.QRadioButton(self)\r
         self.topbutton.setText("上(&T)")\r
         self.topbutton.clicked.connect(self.updatewidgets)\r
 \r
-        self.topsize = QtGui.QSpinBox(self)\r
+        self.topsize = QtWidgets.QSpinBox(self)\r
         self.topsize.setSingleStep(1)\r
         self.topsize.setValue(0)\r
         self.topsize.valueChanged.connect(self.updatewidgets)\r
 \r
-        self.bottombutton = QtGui.QRadioButton(self)\r
+        self.bottombutton = QtWidgets.QRadioButton(self)\r
         self.bottombutton.setText("下(&B)")\r
         self.bottombutton.clicked.connect(self.updatewidgets)\r
 \r
-        self.bottomsize = QtGui.QSpinBox(self)\r
+        self.bottomsize = QtWidgets.QSpinBox(self)\r
         self.bottomsize.setSingleStep(1)\r
         self.bottomsize.setValue(0)\r
         self.bottomsize.valueChanged.connect(self.updatewidgets)\r
 \r
-        self.leftbutton = QtGui.QRadioButton(self)\r
+        self.leftbutton = QtWidgets.QRadioButton(self)\r
         self.leftbutton.setText("左(&L)")\r
         self.leftbutton.clicked.connect(self.updatewidgets)\r
 \r
-        self.leftsize = QtGui.QSpinBox(self)\r
+        self.leftsize = QtWidgets.QSpinBox(self)\r
         self.leftsize.setSingleStep(1)\r
         self.leftsize.setValue(0)\r
         self.leftsize.valueChanged.connect(self.updatewidgets)\r
 \r
-        self.rightbutton = QtGui.QRadioButton(self)\r
+        self.rightbutton = QtWidgets.QRadioButton(self)\r
         self.rightbutton.setText("右(&R)")\r
         self.rightbutton.clicked.connect(self.updatewidgets)\r
 \r
-        self.rightsize = QtGui.QSpinBox(self)\r
+        self.rightsize = QtWidgets.QSpinBox(self)\r
         self.rightsize.setSingleStep(1)\r
         self.rightsize.setValue(0)\r
         self.rightsize.valueChanged.connect(self.updatewidgets)\r
 \r
-        self.sizelabel = QtGui.QLabel(self)\r
+        self.sizelabel = QtWidgets.QLabel(self)\r
         self.sizelabel .setAlignment(\r
             QtCore.Qt.AlignVCenter | QtCore.Qt.AlignLeft)\r
         self.sizelabel.setText("この地点の座標を入力してください。")\r
 \r
-        self.buttonbox = QtGui.QDialogButtonBox(\r
-        QtGui.QDialogButtonBox.Ok | QtGui.QDialogButtonBox.Cancel)\r
+        self.buttonbox = QtWidgets.QDialogButtonBox(\r
+        QtWidgets.QDialogButtonBox.Ok | QtWidgets.QDialogButtonBox.Cancel)\r
         self.buttonbox.accepted.connect(self.accept)\r
         self.buttonbox.rejected.connect(self.reject)\r
-        self.buttonbox.button(QtGui.QDialogButtonBox.Ok).setText("OK")\r
-        self.buttonbox.button(QtGui.QDialogButtonBox.Cancel).setText("キャンセル")\r
+        self.buttonbox.button(QtWidgets.QDialogButtonBox.Ok).setText("OK")\r
+        self.buttonbox.button(QtWidgets.QDialogButtonBox.Cancel).setText("キャンセル")\r
 \r
-        verticalgroup = QtGui.QButtonGroup(self)\r
+        verticalgroup = QtWidgets.QButtonGroup(self)\r
         verticalgroup.addButton(self.topbutton)\r
         verticalgroup.addButton(self.bottombutton)\r
 \r
-        holizontalgroup = QtGui.QButtonGroup(self)\r
+        holizontalgroup = QtWidgets.QButtonGroup(self)\r
         holizontalgroup.addButton(self.leftbutton)\r
         holizontalgroup.addButton(self.rightbutton)\r
 \r
@@ -893,7 +909,7 @@ class SetSizeDialog(QtGui.QDialog):
         self.leftbutton.setChecked(True)\r
         self.rightbutton.setChecked(False)\r
 \r
-        layout = QtGui.QGridLayout(self)\r
+        layout = QtWidgets.QGridLayout(self)\r
         layout.addWidget(self.topbutton, 0, 2, 1, 1)\r
         layout.addWidget(self.topsize, 0, 3, 1, 1)\r
         layout.addWidget(self.leftbutton, 1, 0, 1, 1)\r
@@ -1386,20 +1402,21 @@ class UndoManager(QtCore.QObject):
         return self._commited\r
 \r
 \r
-class PydunColorDialog(QtGui.QColorDialog):\r
+class PydunColorDialog(QtWidgets.QColorDialog):\r
     def __init__(self, parent, config):\r
         super(PydunColorDialog, self).__init__(parent)\r
+        f = QtGui.QFont(defaultfontname, 9)\r
+        self.setFont(f)\r
         for index in range(self.customCount()):\r
             self.setCustomColor(index,\r
                 getcolorfromstring(\r
-                    config.get(index, "#FFFFFF")).rgb())\r
+                    config.get(index, "#FFFFFF")))\r
         self.updateconfig()\r
 \r
     def updateconfig(self):\r
         self._config = dict()\r
         for index in range(self.customCount()):\r
-            self._config[index] = getcolorstring(\r
-                QtGui.QColor.fromRgb(self.customColor(index)))\r
+            self._config[index] = getcolorstring(self.customColor(index))\r
 \r
     def exec_(self):\r
         super(PydunColorDialog, self).exec_()\r
@@ -1410,15 +1427,17 @@ class PydunColorDialog(QtGui.QColorDialog):
         return self._config\r
 \r
 \r
-class PydunAskSaveDialog(QtGui.QMessageBox):\r
+class PydunAskSaveDialog(QtWidgets.QMessageBox):\r
     def __init__(self, parent, filename):\r
         super(PydunAskSaveDialog, self).__init__(parent)\r
+        f = QtGui.QFont(defaultfontname, 9)\r
+        self.setFont(f)\r
         self.setText("{filename} への変更を保存しますか?".format(filename=filename))\r
-        self.setStandardButtons(QtGui.QMessageBox.Save | QtGui.QMessageBox.Discard | QtGui.QMessageBox.Cancel)\r
-        self.setDefaultButton(QtGui.QMessageBox.Save)\r
-        self.button(QtGui.QMessageBox.Save).setText("保存する(&S)")\r
-        self.button(QtGui.QMessageBox.Discard).setText("保存しない(&N)")\r
-        self.button(QtGui.QMessageBox.Cancel).setText("キャンセル")\r
+        self.setStandardButtons(QtWidgets.QMessageBox.Save | QtWidgets.QMessageBox.Discard | QtWidgets.QMessageBox.Cancel)\r
+        self.setDefaultButton(QtWidgets.QMessageBox.Save)\r
+        self.button(QtWidgets.QMessageBox.Save).setText("保存する(&S)")\r
+        self.button(QtWidgets.QMessageBox.Discard).setText("保存しない(&N)")\r
+        self.button(QtWidgets.QMessageBox.Cancel).setText("キャンセル")\r
 \r
 \r
 def getcolorstring(color):\r
@@ -1448,7 +1467,7 @@ def getlatestversion():
 \r
 def main():\r
     loadconfig()\r
-    app = QtGui.QApplication(sys.argv)\r
+    app = QtWidgets.QApplication(sys.argv)\r
     mainWin = MainWindow()\r
     app.installEventFilter(mainWin.centralWidget().mapframe)\r
     mainWin.show()\r