本文整理汇总了Python中qgis.PyQt.QtWidgets.QMenu类的典型用法代码示例。如果您正苦于以下问题:Python QMenu类的具体用法?Python QMenu怎么用?Python QMenu使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了QMenu类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: _read_ini_file
def _read_ini_file(self, root, ini_file_path, category):
try:
ini_full_path = os.path.join(root, ini_file_path)
parser = configparser.ConfigParser()
with codecs.open(ini_full_path, 'r', 'utf-8') as ini_file:
if hasattr(parser, "read_file"):
parser.read_file(ini_file)
else:
parser.readfp(ini_file)
#read config
group_id = parser.get('general', 'id')
group_alias = parser.get('ui', 'alias')
icon_file = ConfigReaderHelper.try_read_config(parser, 'ui', 'icon')
group_icon_path = os.path.join(root, icon_file) if icon_file else None
#try read translations
posible_trans = parser.items('ui')
for key, val in posible_trans:
if type(key) is unicode and key == 'alias[%s]' % self.locale:
self.translator.append(group_alias, val)
break
#create menu
group_menu = QMenu(self.tr(group_alias))
group_menu.setIcon(QIcon(group_icon_path))
#append to all groups
# set contrib&user
self.groups[group_id] = GroupInfo(group_id, group_alias, group_icon_path, ini_full_path, group_menu, category)
except Exception as e:
error_message = self.tr('Group INI file can\'t be parsed: ') + e.message
QgsMessageLog.logMessage(error_message, level=QgsMessageLog.CRITICAL)
开发者ID:nextgis,项目名称:quickmapservices,代码行数:31,代码来源:groups_list.py
示例2: showSnippets
def showSnippets(self, evt):
popupmenu = QMenu()
for name, snippet in list(self.snippets.items()):
action = QAction(self.tr(name), self.btnSnippets)
action.triggered[()].connect(lambda snippet=snippet: self.editor.insert(snippet))
popupmenu.addAction(action)
popupmenu.exec_(QCursor.pos())
开发者ID:liminlu0314,项目名称:QGIS,代码行数:7,代码来源:ScriptEditorDialog.py
示例3: showPopupMenu
def showPopupMenu(self, point):
item = self.tree.currentItem()
if isinstance(item, TreeLogEntryItem):
if item.isAlg:
popupmenu = QMenu()
createTestAction = QAction(QCoreApplication.translate('HistoryDialog', 'Create Test…'), self.tree)
createTestAction.triggered.connect(self.createTest)
popupmenu.addAction(createTestAction)
popupmenu.exec_(self.tree.mapToGlobal(point))
开发者ID:alexbruy,项目名称:QGIS,代码行数:9,代码来源:HistoryDialog.py
示例4: showPopupMenu
def showPopupMenu(self, point):
item = self.tree.currentItem()
if isinstance(item, TreeLogEntryItem):
if item.isAlg:
popupmenu = QMenu()
createTestAction = QAction(self.tr('Create test'), self.tree)
createTestAction.triggered.connect(self.createTest)
popupmenu.addAction(createTestAction)
popupmenu.exec_(self.tree.mapToGlobal(point))
开发者ID:GeoCat,项目名称:QGIS,代码行数:9,代码来源:HistoryDialog.py
示例5: __init__
class WebLayerGroup:
"""Group in menu"""
def __init__(self, name, icon):
self._menu = QMenu(name)
self._menu.setIcon(QIcon(os.path.join(
":/plugins/tmsforkorea/weblayers/icons", icon)))
def menu(self):
return self._menu
开发者ID:mapplus,项目名称:qgis-tmsforkorea-plugin,代码行数:10,代码来源:weblayer.py
示例6: menu
def menu(self):
menu = QMenu()
status = "[Not in sync]" if self.status == self.NOT_IN_SYNC else ""
addAction = QAction(icon("reset.png"), "Add to project %s" % status, menu)
addAction.triggered.connect(self.add)
menu.addAction(addAction)
deleteAction = QAction(QgsApplication.getThemeIcon('/mActionDeleteSelected.svg'), "Delete", menu)
deleteAction.triggered.connect(self.delete)
menu.addAction(deleteAction)
return menu
开发者ID:boundlessgeo,项目名称:qgis-geogiglight-plugin,代码行数:10,代码来源:navigatordialog.py
示例7: showPopupMenu
def showPopupMenu(self, point):
item = self.resultsTree.selectedItems()[0]
if not hasattr(item, 'result'):
return
url = item.result.test.issueUrl
if url:
menu = QMenu()
action = QAction('Open issue page', None)
action.triggered.connect(lambda: webbrowser.open_new(url))
menu.addAction(action)
point = self.mapToGlobal(point)
menu.exec_(point)
开发者ID:gioman,项目名称:qgis-tester-plugin,代码行数:12,代码来源:reportdialog.py
示例8: selectExtent
def selectExtent(self):
popupmenu = QMenu()
useLayerExtentAction = QAction(
self.tr('Use layer/canvas extent'), self.btnSelect)
selectOnCanvasAction = QAction(
self.tr('Select extent on canvas'), self.btnSelect)
popupmenu.addAction(useLayerExtentAction)
popupmenu.addAction(selectOnCanvasAction)
selectOnCanvasAction.triggered.connect(self.selectOnCanvas)
useLayerExtentAction.triggered.connect(self.useLayerExtent)
popupmenu.exec_(QCursor.pos())
开发者ID:Oslandia,项目名称:gml_application_schema_toolbox,代码行数:14,代码来源:bbox_widget.py
示例9: __init__
def __init__(self, iface, parent=None):
"""Constructor."""
super(ProjectConfigurationDialog, self).__init__(parent=parent)
self.iface = iface
self.accepted.connect(self.onAccepted)
self.project = QgsProject.instance()
self.__project_configuration = ProjectConfiguration(self.project)
self.setupUi(self)
self.toggle_menu = QMenu(self)
self.remove_all_action = QAction(self.tr("remove all layers"), self.toggle_menu)
self.toggle_menu.addAction(self.remove_all_action)
self.remove_hidden_action = QAction(self.tr("remove hidden layers"), self.toggle_menu)
self.toggle_menu.addAction(self.remove_hidden_action)
self.add_all_copy_action = QAction(self.tr("add all layers"), self.toggle_menu)
self.toggle_menu.addAction(self.add_all_copy_action)
self.add_visible_copy_action = QAction(self.tr("add visible layers"), self.toggle_menu)
self.toggle_menu.addAction(self.add_visible_copy_action)
self.add_all_offline_action = QAction(self.tr("add all vector layers as offline"), self.toggle_menu)
self.toggle_menu.addAction(self.add_all_offline_action)
self.add_visible_offline_action = QAction(self.tr("add visible vector layers as offline"), self.toggle_menu)
self.toggle_menu.addAction(self.add_visible_offline_action)
self.multipleToggleButton.setMenu(self.toggle_menu)
self.multipleToggleButton.setAutoRaise(True)
self.multipleToggleButton.setPopupMode(QToolButton.InstantPopup)
self.toggle_menu.triggered.connect(self.toggle_menu_triggered)
self.singleLayerRadioButton.toggled.connect(self.baseMapTypeChanged)
self.unsupportedLayersList = list()
self.reloadProject()
开发者ID:opengisch,项目名称:QFieldSync,代码行数:33,代码来源:project_configuration_dialog.py
示例10: addProviderActions
def addProviderActions(self, provider):
if provider.id() in ProviderActions.actions:
toolbarButton = QToolButton()
toolbarButton.setObjectName('provideraction_' + provider.id())
toolbarButton.setIcon(provider.icon())
toolbarButton.setToolTip(provider.name())
toolbarButton.setPopupMode(QToolButton.InstantPopup)
actions = ProviderActions.actions[provider.id()]
menu = QMenu(provider.name(), self)
for action in actions:
action.setData(self)
act = QAction(action.name, menu)
act.triggered.connect(action.execute)
menu.addAction(act)
toolbarButton.setMenu(menu)
self.processingToolbar.addWidget(toolbarButton)
开发者ID:tomkralidis,项目名称:QGIS,代码行数:17,代码来源:ProcessingToolbox.py
示例11: __init__
def __init__(self, lltools, iface, parent):
super(DigitizerWidget, self).__init__(parent)
self.setupUi(self)
self.lltools = lltools
self.iface = iface
self.canvas = iface.mapCanvas()
self.xymenu = QMenu()
icon = QIcon(os.path.dirname(__file__) + '/images/yx.png')
a = self.xymenu.addAction(icon, "Y, X (Lat, Lon) Order")
a.setData(0)
icon = QIcon(os.path.dirname(__file__) + '/images/xy.png')
a = self.xymenu.addAction(icon, "X, Y (Lon, Lat) Order")
a.setData(1)
self.xyButton.setIconSize(QSize(24, 24))
self.xyButton.setIcon(icon)
self.xyButton.setMenu(self.xymenu)
self.xyButton.triggered.connect(self.xyTriggered)
self.crsmenu = QMenu()
icon = QIcon(os.path.dirname(__file__) + '/images/wgs84Projection.png')
a = self.crsmenu.addAction(icon, "WGS 84 (latitude & longitude)")
a.setData(0)
icon = QIcon(os.path.dirname(__file__) + '/images/mgrsProjection.png')
a = self.crsmenu.addAction(icon, "MGRS")
a.setData(1)
icon = QIcon(os.path.dirname(__file__) + '/images/projProjection.png')
a = self.crsmenu.addAction(icon, "Project CRS")
a.setData(2)
icon = QIcon(os.path.dirname(__file__) + '/images/customProjection.png')
a = self.crsmenu.addAction(icon, "Specify CRS")
a.setData(3)
icon = QIcon(os.path.dirname(__file__) + '/images/pluscodes.png')
a = self.crsmenu.addAction(icon, "Plus Codes")
a.setData(4)
self.crsButton.setIconSize(QSize(24, 24))
self.crsButton.setIcon(icon)
self.crsButton.setMenu(self.crsmenu)
self.crsButton.triggered.connect(self.crsTriggered)
self.iface.currentLayerChanged.connect(self.currentLayerChanged)
self.addButton.clicked.connect(self.addFeature)
self.exitButton.clicked.connect(self.exit)
self.readSettings()
self.configButtons()
开发者ID:NationalSecurityAgency,项目名称:qgis-latlontools-plugin,代码行数:45,代码来源:digitizer.py
示例12: initGui
def initGui(self):
self.toolbox = ProcessingToolbox()
self.iface.addDockWidget(Qt.RightDockWidgetArea, self.toolbox)
self.toolbox.hide()
self.resultsDock = ResultsDock()
self.iface.addDockWidget(Qt.RightDockWidgetArea, self.resultsDock)
self.resultsDock.hide()
resultsList.resultAdded.connect(self.resultsDock.fillTree)
self.menu = QMenu(self.iface.mainWindow().menuBar())
self.menu.setObjectName('processing')
self.menu.setTitle(self.tr('Pro&cessing'))
self.toolboxAction = self.toolbox.toggleViewAction()
self.toolboxAction.setObjectName('toolboxAction')
self.toolboxAction.setIcon(
QgsApplication.getThemeIcon("/processingAlgorithm.svg"))
self.toolboxAction.setText(self.tr('&Toolbox'))
self.iface.registerMainWindowAction(self.toolboxAction, 'Ctrl+Alt+T')
self.menu.addAction(self.toolboxAction)
self.modelerAction = QAction(
QgsApplication.getThemeIcon("/processingModel.svg"),
self.tr('Graphical &Modeler...'), self.iface.mainWindow())
self.modelerAction.setObjectName('modelerAction')
self.modelerAction.triggered.connect(self.openModeler)
self.iface.registerMainWindowAction(self.modelerAction, 'Ctrl+Alt+M')
self.menu.addAction(self.modelerAction)
self.historyAction = QAction(
QIcon(os.path.join(cmd_folder, 'images', 'history.svg')),
self.tr('&History...'), self.iface.mainWindow())
self.historyAction.setObjectName('historyAction')
self.historyAction.triggered.connect(self.openHistory)
self.iface.registerMainWindowAction(self.historyAction, 'Ctrl+Alt+H')
self.menu.addAction(self.historyAction)
self.resultsAction = self.resultsDock.toggleViewAction()
self.resultsAction.setObjectName('resultsAction')
self.resultsAction.setIcon(
QgsApplication.getThemeIcon("/processingResult.svg"))
self.resultsAction.setText(self.tr('&Results Viewer'))
self.iface.registerMainWindowAction(self.resultsAction, 'Ctrl+Alt+R')
self.menu.addAction(self.resultsAction)
menuBar = self.iface.mainWindow().menuBar()
menuBar.insertMenu(
self.iface.firstRightStandardMenu().menuAction(), self.menu)
self.menu.addSeparator()
initializeMenus()
createMenus()
开发者ID:Jacory,项目名称:QGIS,代码行数:55,代码来源:ProcessingPlugin.py
示例13: showPopupMenu
def showPopupMenu(self):
popup_menu = QMenu()
select_all_action = QAction(self.tr('Select All'), popup_menu)
select_all_action.triggered.connect(self.selectAll)
clear_all_action = QAction(self.tr('Clear Selection'), popup_menu)
clear_all_action.triggered.connect(self.deselectAll)
popup_menu.addAction(select_all_action)
popup_menu.addAction(clear_all_action)
popup_menu.exec_(QCursor.pos())
开发者ID:Cracert,项目名称:Quantum-GIS,代码行数:9,代码来源:CheckboxesPanel.py
示例14: initGui
def initGui(self):
# opeNoise
self.opeNoise_menu = QMenu(QCoreApplication.translate("opeNoise", "&opeNoise"))
self.opeNoise_menu.setIcon(QIcon(":/plugins/opeNoise/icons/icon_opeNoise.png"))
# CreateReceiverPoints
# self.CreateReceiverPoints_item = QAction(QIcon(":/plugins/opeNoise/icons/icon_CreateReceiverPoints.png"),
# QCoreApplication.translate("opeNoise", self.tr("Create Receiver Points")), self.iface.mainWindow())
self.CreateReceiverPoints_item = QAction(QIcon(":/plugins/opeNoise/icons/icon_CreateReceiverPoints.png"),
self.tr("Create Receiver Points"),
self.iface.mainWindow())
self.CreateReceiverPoints_item.triggered.connect(self.CreateReceiverPoints_show)
# CalculateNoiseLevels
self.CalculateNoiseLevels_item = QAction(QIcon(":/plugins/opeNoise/icons/icon_CalculateNoiseLevels.png"),
self.tr("Calculate Noise Levels"), self.iface.mainWindow())
self.CalculateNoiseLevels_item.triggered.connect(self.CalculateNoiseLevels_show)
# AssignLevelsToBuildings
self.AssignLevelsToBuildings_item = QAction(QIcon(":/plugins/opeNoise/icons/icon_AssignLevelsToBuildings.png"),
self.tr("Assign Levels To Buildings"), self.iface.mainWindow())
self.AssignLevelsToBuildings_item.triggered.connect(self.AssignLevelsToBuildings_show)
# AssignLevelsToBuildings
self.ApplyNoiseSymbology_item = QAction(QIcon(":/plugins/opeNoise/icons/icon_ApplyNoiseSymbology.png"),
QCoreApplication.translate("opeNoise", "Apply Noise Symbology"), self.iface.mainWindow())
self.ApplyNoiseSymbology_item.triggered.connect(self.ApplyNoiseSymbology_show)
# Information
self.Informations_item = QAction(QIcon(":/plugins/opeNoise/icons/icon_Informations.png"),
QCoreApplication.translate("opeNoise", "Informations"), self.iface.mainWindow())
self.Informations_item.triggered.connect(self.Informations_show)
# Credits
self.Credits_item = QAction(QIcon(":/plugins/opeNoise/icons/icon_Credits.png"),
QCoreApplication.translate("opeNoise", "Credits"), self.iface.mainWindow())
self.Credits_item.triggered.connect(self.Credits_show)
# add items
self.opeNoise_menu.addActions([self.CreateReceiverPoints_item,
self.CalculateNoiseLevels_item,
self.AssignLevelsToBuildings_item,
self.ApplyNoiseSymbology_item,
self.Informations_item,
self.Credits_item])
self.menu = self.iface.pluginMenu()
self.menu.addMenu( self.opeNoise_menu )
开发者ID:Arpapiemonte,项目名称:openoise,代码行数:50,代码来源:opeNoise.py
示例15: showPopupMenu
def showPopupMenu(self):
popupmenu = QMenu()
if not (isinstance(self.param, ParameterMultipleInput) and self.param.datatype == dataobjects.TYPE_FILE):
selectLayerAction = QAction(self.tr("Select from open layers"), self.pushButton)
selectLayerAction.triggered.connect(self.showLayerSelectionDialog)
popupmenu.addAction(selectLayerAction)
selectFileAction = QAction(self.tr("Select from filesystem"), self.pushButton)
selectFileAction.triggered.connect(self.showFileSelectionDialog)
popupmenu.addAction(selectFileAction)
popupmenu.exec_(QCursor.pos())
开发者ID:borysiasty,项目名称:QGIS,代码行数:13,代码来源:BatchInputSelectionPanel.py
示例16: showPopupMenu
def showPopupMenu(self):
popupmenu = QMenu()
if not (isinstance(self.param, QgsProcessingParameterMultipleLayers)
and self.param.layerType == dataobjects.TYPE_FILE):
selectLayerAction = QAction(
QCoreApplication.translate('BatchInputSelectionPanel', 'Select from Open Layers…'), self.pushButton)
selectLayerAction.triggered.connect(self.showLayerSelectionDialog)
popupmenu.addAction(selectLayerAction)
selectFileAction = QAction(
QCoreApplication.translate('BatchInputSelectionPanel', 'Select Files…'), self.pushButton)
selectFileAction.triggered.connect(self.showFileSelectionDialog)
popupmenu.addAction(selectFileAction)
selectDirectoryAction = QAction(
QCoreApplication.translate('BatchInputSelectionPanel', 'Select Directory…'), self.pushButton)
selectDirectoryAction.triggered.connect(self.showDirectorySelectionDialog)
popupmenu.addAction(selectDirectoryAction)
popupmenu.exec_(QCursor.pos())
开发者ID:digitalsatori,项目名称:QGIS,代码行数:21,代码来源:BatchInputSelectionPanel.py
示例17: initGui
def initGui(self):
self.initProcessing()
# Setup menu
self.quickosm_menu = QMenu('QuickOSM')
self.quickosm_menu.setIcon(
QIcon(join(dirname(__file__), 'resources', 'QuickOSM.svg')))
self.vector_menu = self.iface.vectorMenu()
self.vector_menu.addMenu(self.quickosm_menu)
# Main window
self.mainWindowAction = QAction(
QIcon(join(dirname(__file__), 'resources', 'QuickOSM.svg')),
'QuickOSM…',
self.iface.mainWindow())
# noinspection PyUnresolvedReferences
self.mainWindowAction.triggered.connect(self.openMainWindow)
self.toolbar.addAction(self.mainWindowAction)
self.iface.QuickOSM_mainWindowDialog = MainWindowDialog()
# Action JOSM
self.josmAction = QAction(
QIcon(join(dirname(__file__), 'resources', 'josm_icon.svg')),
tr('JOSM Remote'),
self.iface.mainWindow())
self.josmAction.triggered.connect(self.josm_remote)
self.toolbar.addAction(self.josmAction)
# Insert in the good order
self.quickosm_menu.addAction(self.mainWindowAction)
self.quickosm_menu.addAction(self.josmAction)
for server in OVERPASS_SERVERS:
self.iface.QuickOSM_mainWindowDialog.comboBox_default_OAPI. \
addItem(server)
# Read the config file
custom_config = join(quickosm_user_folder(), 'custom_config.json')
if isfile(custom_config):
with open(custom_config) as f:
config_json = load(f)
for server in config_json.get('overpass_servers'):
if server not in OVERPASS_SERVERS:
LOGGER.info(
'Custom overpass server list added: {}'.format(
server))
self.iface.QuickOSM_mainWindowDialog.\
comboBox_default_OAPI.addItem(server)
开发者ID:3liz,项目名称:QuickOSM,代码行数:48,代码来源:quick_osm.py
示例18: showPopupMenu
def showPopupMenu(self):
popupmenu = QMenu()
if (isinstance(self.param, QgsProcessingParameterMultipleLayers) and
self.param.layerType() != QgsProcessing.TypeFile):
selectLayerAction = QAction(self.tr('Select from Open Layers…'), self.pushButton)
selectLayerAction.triggered.connect(self.showLayerSelectionDialog)
popupmenu.addAction(selectLayerAction)
selectFileAction = QAction(self.tr('Select from File System…'), self.pushButton)
selectFileAction.triggered.connect(self.showFileSelectionDialog)
popupmenu.addAction(selectFileAction)
popupmenu.exec_(QCursor.pos())
开发者ID:qgis,项目名称:QGIS,代码行数:14,代码来源:BatchInputSelectionPanel.py
示例19: initGui
def initGui(self):
readTrackedLayers()
QgsMapLayerRegistry.instance().layerWasAdded.connect(trackLayer)
QgsMapLayerRegistry.instance().layerRemoved.connect(layerRemoved)
icon = QIcon(os.path.dirname(__file__) + "/ui/resources/geogig.png")
self.explorerAction = navigatorInstance.toggleViewAction()
self.explorerAction.setIcon(icon)
self.explorerAction.setText("GeoGig Navigator")
icon = QIcon(os.path.dirname(__file__) + "/ui/resources/identify.png")
self.toolAction = QAction(icon, "GeoGig Feature Info Tool", self.iface.mainWindow())
self.toolAction.setCheckable(True)
self.toolAction.triggered.connect(self.setTool)
self.menu = QMenu(self.iface.mainWindow())
self.menu.setTitle("GeoGig")
self.menu.addAction(self.explorerAction)
self.menu.addAction(self.toolAction)
bar = self.iface.layerToolBar()
self.toolButton = QToolButton()
self.toolButton.setMenu(self.menu)
self.toolButton.setPopupMode(QToolButton.MenuButtonPopup)
self.toolButton.setDefaultAction(self.explorerAction)
bar.addWidget(self.toolButton)
self.iface.addPluginToMenu("&GeoGig", self.explorerAction)
self.iface.addPluginToMenu("&GeoGig", self.toolAction)
addSettingsMenu("GeoGig")
addHelpMenu("GeoGig")
addAboutMenu("GeoGig")
self.mapTool = MapToolGeoGigInfo(self.iface.mapCanvas())
#This crashes QGIS, so we comment it out until finding a solution
#self.mapTool.setAction(self.toolAction)
self.iface.addDockWidget(Qt.RightDockWidgetArea, navigatorInstance)
try:
from lessons import addLessonsFolder, addGroup
folder = os.path.join(os.path.dirname(__file__), "_lessons")
addLessonsFolder(folder, "geogig")
group_description = os.path.join(folder, "group.md")
addGroup("GeoGig lessons", group_description)
except Exception as e:
pass
开发者ID:boundlessgeo,项目名称:qgis-geogiglight-plugin,代码行数:47,代码来源:plugin.py
示例20: contextMenuEvent
def contextMenuEvent(self, event):
if isinstance(self.element, QgsProcessingModelOutput):
return
popupmenu = QMenu()
removeAction = popupmenu.addAction('Remove')
removeAction.triggered.connect(self.removeElement)
editAction = popupmenu.addAction('Edit')
editAction.triggered.connect(self.editElement)
if isinstance(self.element, QgsProcessingModelChildAlgorithm):
if not self.element.isActive():
removeAction = popupmenu.addAction('Activate')
removeAction.triggered.connect(self.activateAlgorithm)
else:
deactivateAction = popupmenu.addAction('Deactivate')
deactivateAction.triggered.connect(self.deactivateAlgorithm)
popupmenu.exec_(event.screenPos())
开发者ID:blazek,项目名称:QGIS,代码行数:16,代码来源:ModelerGraphicItem.py
注:本文中的qgis.PyQt.QtWidgets.QMenu类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论