| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- from qgis.PyQt.QtCore import Qt
- from qgis.PyQt.QtWidgets import QAction, QMessageBox
- from .searchDock import SearchDockWidget
- from ..icons import icons
- from ...utils import PluginConfig
- conf = PluginConfig()
- class SearchAction(QAction):
- def __init__(
- self,
- iface,
- parent=None,
- ):
- super().__init__(parent)
- self.parent = parent
- self.iface = iface
- self.setIcon(icons["search"])
- self.setText("文件服务器")
- self.searchdockwidget = SearchDockWidget(self.iface)
- self.searchdockwidget.visibilityChanged.connect(self.onDockVisibilityChanged)
- self.iface.addDockWidget(Qt.RightDockWidgetArea, self.searchdockwidget)
- self.searchdockwidget.hide()
- self.setCheckable(True)
- self.triggered.connect(self.openSearch)
- def openSearch(self):
- key = conf.get_key()
- if key == "":
- QMessageBox.warning(
- self.parent,
- "错误",
- "天地图Key未设置或Key无效",
- QMessageBox.Yes,
- QMessageBox.Yes,
- )
- else:
- if self.searchdockwidget.isHidden():
- self.searchdockwidget.show()
- else:
- self.searchdockwidget.hide()
- def onDockVisibilityChanged(self, is_visible):
- if not is_visible:
- self.setChecked(False)
- else:
- self.setChecked(True)
- def unload(self):
- self.iface.removeDockWidget(self.searchdockwidget)
|