diff --git a/QTextEditEnhanced.py b/QTextEditEnhanced.py index f89c142..3c459dd 100644 --- a/QTextEditEnhanced.py +++ b/QTextEditEnhanced.py @@ -1,8 +1,7 @@ import sys -from qgis.PyQt.QtWidgets import QTextEdit, QDialog, QToolTip -from qgis.PyQt.QtCore import QEvent -from qgis.PyQt.QtGui import QTextCursor -from qgis.PyQt.Qt import QDesktopServices, QUrl, QApplication, Qt, QBrush, QTextCharFormat +from qgis.PyQt.QtWidgets import QTextEdit, QDialog, QToolTip, QApplication +from qgis.PyQt.QtCore import QEvent, Qt, QUrl +from qgis.PyQt.QtGui import QTextCursor, QDesktopServices, QBrush, QTextCharFormat from qgis.PyQt import uic from os import path @@ -16,12 +15,12 @@ def __init__(self, parent): self.link_window = uic.loadUi(path.join(pluginPath, "ui/ui_hyperlink.ui")) def event(self, e): - if e.type() == QEvent.ToolTip: + if e.type() == QEvent.Type.ToolTip: pos = e.pos() pos.setX(pos.x() - self.viewportMargins().left()) pos.setY(pos.y() - self.viewportMargins().top()) cursor = self.cursorForPosition(pos) - cursor.select(QTextCursor.WordUnderCursor) + cursor.select(QTextCursor.SelectionType.WordUnderCursor) text = self.anchorAt(e.pos()) if text: QToolTip.showText(e.globalPos(), f"{text} [Ctrl + click]" ) @@ -32,7 +31,7 @@ def event(self, e): def mouseMoveEvent(self, e): if self.anchorAt(e.pos()): - QApplication.setOverrideCursor(Qt.PointingHandCursor) + QApplication.setOverrideCursor(Qt.CursorShape.PointingHandCursor) else: self.restoreDefaultCursor() super().mouseMoveEvent(e) @@ -42,7 +41,7 @@ def leaveEvent(self, e): self.restoreDefaultCursor() def mousePressEvent(self, e): - if e.button() == Qt.RightButton: + if e.button() == Qt.MouseButton.RightButton: menu = self.createStandardContextMenu() menu.addSeparator() addHyperLinkAction = menu.addAction("Add Hyperlink") @@ -52,7 +51,7 @@ def mousePressEvent(self, e): super().mousePressEvent(e) def mouseReleaseEvent(self, e): - if e.modifiers() == Qt.ControlModifier: + if e.modifiers() == Qt.Modifier.CTRL: url = QUrl.fromLocalFile(self.anchorAt(e.pos())) QDesktopServices.openUrl(url) super().mouseReleaseEvent(e) @@ -64,7 +63,7 @@ def restoreDefaultCursor(self): def showAddHyperLinkUi(self): self.link_window.eText.setText(self.textCursor().selectedText()) self.link_window.eLink.clear() - if self.link_window.exec_() == QDialog.Accepted: + if self.link_window.exec() == QDialog.DialogCode.Accepted: linkName = self.link_window.eText.text() linkAddress = self.link_window.eLink.text() cursor = self.textCursor() diff --git a/metadata.txt b/metadata.txt index 938563f..0415742 100644 --- a/metadata.txt +++ b/metadata.txt @@ -11,9 +11,9 @@ [general] name=qNote qgisMinimumVersion=3.0 -qgisMaximumVersion=3.99 +qgisMaximumVersion=4.99 description=Save notes in QGIS projects -version=2.3 +version=2.4 about=qNote is plugin for saving text notes in QGIS project files, basic HTML-formatting and hyperlinks are supported # end of mandatory metadata @@ -22,6 +22,8 @@ about=qNote is plugin for saving text notes in QGIS project files, basic HTML-fo # Uncomment the following line and add your changelog entries: changelog= + 2.4 + - port to Qt6/QGIS 4.0 2.3 - fix mouse pointer behaviour diff --git a/qnote.py b/qnote.py index 1b659da..3019377 100644 --- a/qnote.py +++ b/qnote.py @@ -43,7 +43,7 @@ def initGui(self): self.iface.newProjectCreated.connect(self.clearEdit) self.dock = MainPanel() - self.iface.addDockWidget(Qt.BottomDockWidgetArea, self.dock) + self.iface.addDockWidget(Qt.DockWidgetArea.BottomDockWidgetArea, self.dock) self.loadData() @@ -52,7 +52,7 @@ def unload(self): del self.dock def run(self): - self.iface.addDockWidget(Qt.BottomDockWidgetArea, self.dock) + self.iface.addDockWidget(Qt.DockWidgetArea.BottomDockWidgetArea, self.dock) self.loadData() def saveData(self): diff --git a/qnote_panel.py b/qnote_panel.py index 6147cb0..f85e613 100644 --- a/qnote_panel.py +++ b/qnote_panel.py @@ -1,8 +1,12 @@ # -*- coding: utf-8 -*- -from qgis.PyQt.QtWidgets import QDockWidget, QAction +from qgis.PyQt.QtWidgets import QDockWidget +try: + from qgis.PyQt.QtWidgets import QAction +except ImportError: + from qgis.PyQt.QtGui import QAction from qgis.PyQt.QtGui import QIcon, QFont, QTextListFormat -from qgis.PyQt.Qt import Qt +from qgis.PyQt.QtCore import Qt from qgis.PyQt import uic from os import path @@ -64,10 +68,10 @@ def addHyperlink(self): self.edit.showAddHyperLinkUi() def setBold(self): - if self.edit.fontWeight() == QFont.Bold: - self.edit.setFontWeight(QFont.Normal) + if self.edit.fontWeight() == QFont.Weight.Bold: + self.edit.setFontWeight(QFont.Weight.Normal) else: - self.edit.setFontWeight(QFont.Bold) + self.edit.setFontWeight(QFont.Weight.Bold) def setItalic(self): state = self.edit.fontItalic() @@ -84,8 +88,8 @@ def setStrike(self): def setBulletList(self): cursor = self.edit.textCursor() - cursor.insertList(QTextListFormat.ListDisc) + cursor.insertList(QTextListFormat.Style.ListDisc) def setNumberList(self): cursor = self.edit.textCursor() - cursor.insertList(QTextListFormat.ListDecimal) + cursor.insertList(QTextListFormat.Style.ListDecimal)