Exemple #1
0
    def _setupMajorObjectItemActions(self, actionsgroup=None):
        if actionsgroup is None:
            actionsgroup = QtGui.QActionGroup(self)

        # open metadata view
        icon = qt4support.geticon('metadata.svg', __name__)
        QtGui.QAction(icon,
                      self.tr('Open &Metadata View'),
                      actionsgroup,
                      objectName='actionOpenItemMetadataView',
                      shortcut=self.tr('Ctrl+M'),
                      toolTip=self.tr('Show metadata in a new window'),
                      statusTip=self.tr('Show metadata in a new window'),
                      triggered=self.openItemMatadataView,
                      enabled=False)  # @TODO: remove

        # show properties
        # @TODO: standard info icon from gdsview package
        icon = qt4support.geticon('info.svg', 'gsdview')
        QtGui.QAction(icon,
                      self.tr('&Show Properties'),
                      actionsgroup,
                      objectName='actionShowItemProperties',
                      shortcut=self.tr('Ctrl+S'),
                      toolTip=self.tr('Show the property dialog for the '
                                      'cutent item'),
                      statusTip=self.tr('Show the property dialog for the '
                                        'cutent item'),
                      triggered=self.showItemProperties)

        return actionsgroup
Exemple #2
0
    def _setupFileActions(self):
        style = self.style()

        actions = QtGui.QActionGroup(self)

        icon = style.standardIcon(QtGui.QStyle.SP_DialogOpenButton)
        QtGui.QAction(icon, self.tr('Open Vector'), actions,
                      objectName='openVectorAction',
                      statusTip=self.tr('Open Vector'),
                      triggered=self.onOpenVector)

        icon = style.standardIcon(QtGui.QStyle.SP_DialogResetButton)
        QtGui.QAction(icon, self.tr('Close All'), actions,
                      objectName='claseAllAction',
                      statusTip=self.tr('Close All'),
                      triggered=self.reset)

        QtGui.QAction(actions).setSeparator(True)

        icon = style.standardIcon(QtGui.QStyle.SP_DialogCancelButton)
        QtGui.QAction(icon, self.tr('Exit'), actions,
                      objectName='exitAction',
                      statusTip=self.tr('Exit'),
                      triggered=self.close)

        return actions
Exemple #3
0
    def _setupActions(self):
        actions = QtGui.QActionGroup(self)

        # KML export
        icon = qt4support.geticon('area.svg', 'gsdview')
        QtGui.QAction(icon,
                      self.tr('KML export'),
                      actions,
                      objectName='kmlExportAction',
                      statusTip=self.tr('KML export'),
                      triggered=self.exportKML)

        # Open in google earth
        icon = qt4support.geticon('earth.svg', __name__)
        QtGui.QAction(icon,
                      self.tr('Open in Google Earth'),
                      actions,
                      objectName='openInGoogleEarthAction',
                      statusTip=self.tr('Open in Google Earth'),
                      triggered=self.openInGoogleEarth)

        # Open in google maps
        icon = qt4support.geticon('overview.svg', 'gsdview.gdalbackend')
        QtGui.QAction(icon,
                      self.tr('Open in Google Maps'),
                      actions,
                      objectName='openInGoogleMapsAction',
                      statusTip=self.tr('Open in Google Maps'),
                      triggered=self.openInGoogleMaps)

        return actions
Exemple #4
0
    def _setupViewActions(self):
        style = self.style()
        actions = QtGui.QActionGroup(self)

        icon = style.standardIcon(QtGui.QStyle.SP_DialogResetButton)
        QtGui.QAction(icon,
                      self.tr('Reset'),
                      actions,
                      objectName='resetAction',
                      statusTip=self.tr('Reset'),
                      triggered=self.onReset)

        QtGui.QAction(actions).setSeparator(True)

        icon = QtGui.QIcon(
            ':/trolltech/dialogs/qprintpreviewdialog/images/zoom-in-32.png')
        QtGui.QAction(icon,
                      self.tr('Zoom In'),
                      actions,
                      objectName='zoomInAction',
                      statusTip=self.tr('Zoom In'),
                      shortcut=self.tr('Ctrl++'),
                      triggered=lambda: self.graphicsview.scale(1.2, 1.2))

        icon = QtGui.QIcon(
            ':/trolltech/dialogs/qprintpreviewdialog/images/zoom-out-32.png')
        QtGui.QAction(
            icon,
            self.tr('Zoom Out'),
            actions,
            objectName='zoomOutAction',
            statusTip=self.tr('Zoom Out'),
            shortcut=self.tr('Ctrl+-'),
            triggered=lambda: self.graphicsview.scale(1 / 1.2, 1 / 1.2))

        icon = QtGui.QIcon(
            ':/trolltech/dialogs/qprintpreviewdialog/images/page-setup-24.png')
        QtGui.QAction(icon,
                      self.tr('Zoom 1:1'),
                      actions,
                      objectName='zoomResetAction',
                      statusTip=self.tr('Zoom 1:1'),
                      triggered=lambda: self.graphicsview.setMatrix(
                          QtGui.QMatrix(1, 0, 0, -1, 0, 0)))

        icon = QtGui.QIcon(
            ':/trolltech/dialogs/qprintpreviewdialog/images/fit-page-32.png')
        QtGui.QAction(
            icon,
            self.tr('Zoom Fit'),
            actions,
            objectName='zoomFitAction',
            statusTip=self.tr('Zoom Fit'),
            #checkable=True,
            triggered=lambda: self.graphicsview.fitInView(
                self.graphicsview.sceneRect(), QtCore.Qt.KeepAspectRatio))

        return actions
Exemple #5
0
    def __init__(self, parent=None, stdmodes=True, **kwargs):
        QtCore.QObject.__init__(self, parent, **kwargs)

        self._moderegistry = []
        self.actions = QtGui.QActionGroup(self)
        self.actions.setExclusive(True)

        if stdmodes:
            self.registerStandardModes()
Exemple #6
0
    def _setupHelpActions(self):
        actions = QtGui.QActionGroup(self)

        icon = QtGui.QIcon(
            ':/trolltech/styles/commonstyle/images/fileinfo-32.png')
        QtGui.QAction(icon, 'About', actions, triggered=self.about)

        icon = QtGui.QIcon(':/trolltech/qmessagebox/images/qtlogo-64.png')
        QtGui.QAction(icon,
                      'About Qt',
                      actions,
                      triggered=QtGui.QApplication.aboutQt)

        return actions
Exemple #7
0
    def _setupSettingsActions(self):
        actionsgroup = QtGui.QActionGroup(self)

        # Preferences
        icon = qt4support.geticon('preferences.svg', __name__)
        QtGui.QAction(icon,
                      self.tr('&Preferences'),
                      actionsgroup,
                      objectName='preferencesAction',
                      toolTip=self.tr('Open the program preferences dialog'),
                      statusTip=self.tr('Open the program preferences dialog'),
                      triggered=self.showPreferencesDialog)

        return actionsgroup
Exemple #8
0
    def _setupHelpActions(self):
        actions = QtGui.QActionGroup(self)

        icon = QtGui.QIcon(
                    ':/trolltech/styles/commonstyle/images/fileinfo-32.png')
        QtGui.QAction(icon, self.tr('About'), actions,
                      objectName='aboutAction',
                      statusTip=self.tr('About'),
                      triggered=self.about)

        icon = QtGui.QIcon(':/trolltech/qmessagebox/images/qtlogo-64.png')
        QtGui.QAction(icon, self.tr('About Qt'), actions,
                      objectName='aboutQtAction',
                      statusTip=self.tr('About Qt'),
                      triggered=QtGui.QApplication.aboutQt)

        return actions
Exemple #9
0
    def _setupFileActions(self):
        style = self.style()

        actions = QtGui.QActionGroup(self)

        icon = style.standardIcon(QtGui.QStyle.SP_DialogOpenButton)
        QtGui.QAction(icon, 'Open', actions, triggered=self.openfile)

        icon = style.standardIcon(QtGui.QStyle.SP_DialogCloseButton)
        QtGui.QAction(icon, 'Close', actions, triggered=self.scene.clear)

        QtGui.QAction(actions).setSeparator(True)

        icon = style.standardIcon(QtGui.QStyle.SP_DialogCancelButton)
        QtGui.QAction(icon, 'Exit', actions, triggered=self.close)

        return actions
Exemple #10
0
    def _setupDatasetItemActions(self, actionsgroup=None):
        if actionsgroup is None:
            actionsgroup = QtGui.QActionGroup(self)

        # open RGB
        # @TODO: find an icon for RGB
        icon = qt4support.geticon('rasterband.svg', __name__)
        QtGui.QAction(
            icon,
            self.tr('Open as RGB'),
            actionsgroup,
            objectName='actionOpenRGBImageView',
            #shortcut=self.tr('Ctrl+B'),
            toolTip=self.tr('Display the dataset as an RGB image'),
            statusTip=self.tr('Open as RGB'),
            triggered=self.openRGBImageView)

        # build overviews
        icon = qt4support.geticon('overview.svg', __name__)
        QtGui.QAction(
            icon,
            self.tr('&Build overviews'),
            actionsgroup,
            objectName='actionBuidOverviews',
            shortcut=self.tr('Ctrl+B'),
            toolTip=self.tr('Build overviews for all raster bands'),
            statusTip=self.tr('Build overviews for all raster bands'),
            triggered=self.buildOverviews)

        # @TODO: add band, add virtual band, open GCPs view

        # close
        icon = qt4support.geticon('close.svg', 'gsdview')
        QtGui.QAction(icon,
                      self.tr('Close'),
                      actionsgroup,
                      objectName='actionCloseItem',
                      shortcut=self.tr('Ctrl+W'),
                      toolTip=self.tr('Close the current item'),
                      statusTip=self.tr('Close the current item'),
                      triggered=self.closeCurrentItem)

        self._setupMajorObjectItemActions(actionsgroup)

        return actionsgroup
Exemple #11
0
    def _setupFileActions(self):
        style = self.style()

        actions = QtGui.QActionGroup(self)

        icon = style.standardIcon(QtGui.QStyle.SP_DialogOpenButton)
        QtGui.QAction(icon,
                      self.tr('&Open'),
                      actions,
                      objectName='openAction',
                      shortcut=self.tr('Ctrl+O'),
                      statusTip=self.tr('Open'),
                      triggered=self.onOpen)

        icon = style.standardIcon(QtGui.QStyle.SP_DialogSaveButton)
        QtGui.QAction(icon,
                      self.tr('&Save As'),
                      actions,
                      objectName='saveAsAction',
                      shortcut=self.tr('Ctrl+S'),
                      statusTip=self.tr('Save as'),
                      triggered=self.onSave)

        icon = QtGui.QIcon(
            ':/trolltech/dialogs/qprintpreviewdialog/images/print-32.png')
        QtGui.QAction(icon,
                      self.tr('&Print'),
                      actions,
                      objectName='printAction',
                      shortcut=self.tr('Ctrl+P'),
                      statusTip=self.tr('Print'),
                      triggered=self.onPrint)

        QtGui.QAction(actions).setSeparator(True)

        icon = style.standardIcon(QtGui.QStyle.SP_DialogCancelButton)
        QtGui.QAction(icon,
                      self.tr('&Quit'),
                      actions,
                      objectName='exitAction',
                      shortcut=self.tr('Ctrl+Q'),
                      statusTip=self.tr('Quit'),
                      triggered=self.close)

        return actions
Exemple #12
0
    def _setupSubDatasetItemActions(self, actionsgroup=None):
        if actionsgroup is None:
            actionsgroup = QtGui.QActionGroup(self)

        # open
        icon = qt4support.geticon('open.svg', __name__)
        QtGui.QAction(icon,
                      self.tr('Open Sub Dataset'),
                      actionsgroup,
                      objectName='actionOpenSubDatasetItem',
                      shortcut=self.tr('Ctrl+O'),
                      toolTip=self.tr('Open Sub Dataset'),
                      statusTip=self.tr('Open Sub Dataset'),
                      triggered=self.openSubDataset)

        self._setupDatasetItemActions(actionsgroup)

        return actionsgroup
Exemple #13
0
    def _setupFileActions(self):
        # @TODO: add a "close all" (items) action
        actionsgroup = QtGui.QActionGroup(self)

        # Open
        icon = qt4support.geticon('open.svg', __name__)
        QtGui.QAction(icon,
                      self.tr('&Open'),
                      actionsgroup,
                      objectName='openAction',
                      shortcut=self.tr('Ctrl+O'),
                      toolTip=self.tr('Open an existing file'),
                      statusTip=self.tr('Open an existing file'),
                      triggered=self.openFile)

        # Close
        icon = qt4support.geticon('close.svg', __name__)
        QtGui.QAction(
            icon,
            self.tr('&Close'),
            actionsgroup,
            objectName='closeAction',
            # 'Ctrl+W' shortcu is used for closing windows
            #shortcut=self.tr('Ctrl+W'),
            toolTip=self.tr('Close the current file'),
            statusTip=self.tr('Close the current file'),
            triggered=self.closeItem)

        # Separator
        QtGui.QAction(actionsgroup).setSeparator(True)
        # objectName='separator')

        # Exit
        icon = qt4support.geticon('quit.svg', __name__)
        QtGui.QAction(icon,
                      self.tr('&Exit'),
                      actionsgroup,
                      objectName='exitAction',
                      shortcut=self.tr('Ctrl+X'),
                      toolTip=self.tr('Exit the program'),
                      statusTip=self.tr('Exit the program'),
                      triggered=self.close)

        return actionsgroup
Exemple #14
0
    def group(controls_list, exclusive=True):
        """
        :type controls_list: list of ControlBar
        :type exclusive: bool
        """
        different_parents = set([control.parent for control in controls_list])

        if len(different_parents) > 1:
            raise ValueError(
                "Parent of the control bars must be the same when adding into action group!"
            )
        elif len(different_parents) == 0:
            raise IndexError("Input list must not be empty!")

        parent = different_parents.pop()

        action_group = QtGui.QActionGroup(parent)
        action_group.setExclusive(exclusive)

        for control in controls_list:
            control.set_group(action_group)
Exemple #15
0
    def _setupActions(self):
        actions = QtGui.QActionGroup(self)

        # Zoom in
        icon = qt4support.geticon('zoom-in.svg', 'gsdview')
        QtGui.QAction(icon, self.tr('Zoom In'), actions,
                      objectName='zoomInAction',
                      statusTip=self.tr('Zoom In'),
                      shortcut=QtGui.QKeySequence(self.tr('Ctrl++')),
                      triggered=self.zoomIn)

        # Zoom out
        icon = qt4support.geticon('zoom-out.svg', 'gsdview')
        QtGui.QAction(icon, self.tr('Zoom Out'), actions,
                      objectName='zoomOutAction',
                      statusTip=self.tr('Zoom Out'),
                      shortcut=QtGui.QKeySequence(self.tr('Ctrl+-')),
                      triggered=self.zoomOut)

        # Zoom fit
        icon = qt4support.geticon('zoom-fit.svg', 'gsdview')
        QtGui.QAction(icon, self.tr('Zoom Fit'), actions,
                      objectName='zoomFitAction',
                      statusTip=self.tr('Zoom to fit the window size'),
                      triggered=self.zoomFit)

        # Zoom 100
        icon = qt4support.geticon('zoom-100.svg', 'gsdview')
        QtGui.QAction(icon, self.tr('Zoom 100%'), actions,
                      objectName='zoom100Action',
                      statusTip=self.tr('Original size'),
                      triggered=self.zoom100)

        # Manual Zoom
        #icon = QtGui.QIcon() #qt4support.geticon('zoom-100.svg', 'gsdview')
        #QtGui.QWidgetAction(icon, self.tr('Zoom 100%'), actions,
        #              statusTip=self.tr('Original size'),
        #              triggered=self.zoom100)

        return actions
Exemple #16
0
    def _setupActions(self):
        actions = QtGui.QActionGroup(self)

        # Zoom in
        icon = qt4support.geticon('zoom-in.svg', 'gsdview')
        QtGui.QAction(icon, self.tr('Zoom In'), actions,
                      objectName='zoomOutAction',
                      statusTip=self.tr('Zoom In'),
                      shortcut=QtGui.QKeySequence(self.tr('Ctrl++')),
                      enabled=False,
                      triggered=lambda: self._zoom(+1))

        # Zoom out
        icon = qt4support.geticon('zoom-out.svg', 'gsdview')
        QtGui.QAction(icon, self.tr('Zoom Out'), actions,
                      objectName='zoomOutAction',
                      statusTip=self.tr('Zoom Out'),
                      shortcut=QtGui.QKeySequence(self.tr('Ctrl+-')),
                      enabled=False,
                      triggered=lambda: self._zoom(-1))

        return actions
Exemple #17
0
    def _setupActions(self):
        qstype = QtGui.QApplication.style()

        # Setup actions
        self.actions = QtGui.QActionGroup(self)

        # Save As
        icon = qstype.standardIcon(QtGui.QStyle.SP_DialogSaveButton)
        self.actionSaveAs = QtGui.QAction(
            icon,
            self.tr('&Save As'),
            self,
            shortcut=self.tr('Ctrl+S'),
            statusTip=self.tr('Save text to file'),
            triggered=self.save)
        self.actions.addAction(self.actionSaveAs)

        # Clear
        icon = QtGui.QIcon(':/trolltech/styles/commonstyle/images/'
                           'standardbutton-clear-32.png')
        self.actionClear = QtGui.QAction(icon,
                                         self.tr('&Clear'),
                                         self,
                                         shortcut=self.tr('Shift+F5'),
                                         statusTip=self.tr('Clear the text'),
                                         triggered=self.clear)
        self.actions.addAction(self.actionClear)

        # Close
        icon = qstype.standardIcon(QtGui.QStyle.SP_DialogCloseButton)
        self.actionHide = QtGui.QAction(
            icon,
            self.tr('&Hide'),
            self,
            shortcut=self.tr('Ctrl+W'),
            statusTip=self.tr('Hide the text plane'),
            triggered=self.planeHideRequest)
        self.actions.addAction(self.actionHide)
Exemple #18
0
    def _setupBandItemActions(self, actionsgroup=None):
        if actionsgroup is None:
            actionsgroup = QtGui.QActionGroup(self)

        # open image view
        icon = qt4support.geticon('open.svg', __name__)
        QtGui.QAction(icon,
                      self.tr('&Open Image View'),
                      actionsgroup,
                      objectName='actionOpenImageView',
                      shortcut=self.tr('Ctrl+O'),
                      toolTip=self.tr('Open an image view'),
                      statusTip=self.tr('Open a new image view'),
                      triggered=self.openImageView)

        # @TODO: add a new action for newImageView

        # @TODO: Masked bands, Compute statistics, Compute histogram
        # @TODO: dataset --> Build overviews

        self._setupMajorObjectItemActions(actionsgroup)

        return actionsgroup
Exemple #19
0
    def _setupHelpActions(self):
        actionsgroup = QtGui.QActionGroup(self)

        # About
        icon = qt4support.geticon('about.svg', __name__)
        QtGui.QAction(icon,
                      self.tr('&About'),
                      actionsgroup,
                      objectName='aboutAction',
                      toolTip=self.tr('Show program information'),
                      statusTip=self.tr('Show program information'),
                      triggered=lambda: self.aboutdialog.exec_())

        # AboutQt
        icon = QtGui.QIcon(':/trolltech/qmessagebox/images/qtlogo-64.png')
        QtGui.QAction(icon,
                      self.tr('About &Qt'),
                      actionsgroup,
                      objectName='aboutQtAction',
                      toolTip=self.tr('Show information about Qt'),
                      statusTip=self.tr('Show information about Qt'),
                      triggered=lambda: QtGui.QMessageBox.aboutQt(self))

        return actionsgroup
Exemple #20
0
    def _setupActions(self):
        style = QtGui.QApplication.style()

        actions = QtGui.QActionGroup(self)

        icon = QtGui.QIcon(':/trolltech/styles/commonstyle/images/up-128.png')
        QtGui.QAction(icon,
                      self.tr('Move to top'),
                      actions,
                      objectName='moveToTopAction',
                      statusTip=self.tr('Move to top'),
                      shortcut=self.tr('Ctrl+PgUp'))

        icon = style.standardIcon(QtGui.QStyle.SP_ArrowUp)
        QtGui.QAction(icon,
                      self.tr('Move up'),
                      actions,
                      objectName='moveUpAction',
                      statusTip=self.tr('Move up'),
                      shortcut=self.tr('Ctrl+Up'))

        icon = style.standardIcon(QtGui.QStyle.SP_ArrowDown)
        QtGui.QAction(icon,
                      self.tr('Move down'),
                      actions,
                      objectName='moveDownAction',
                      statusTip=self.tr('Move down'),
                      shortcut=self.tr('Ctrl+Down'))

        icon = QtGui.QIcon(
            ':/trolltech/styles/commonstyle/images/down-128.png')
        QtGui.QAction(icon,
                      self.tr('Move to bottom'),
                      actions,
                      objectName='moveToBottomAction',
                      statusTip=self.tr('Move to bottom'),
                      shortcut=self.tr('Ctrl+PgDown'))

        #~ #'standardbutton-closetab-16.png'
        icon = QtGui.QIcon(':/trolltech/styles/commonstyle/images/'
                           'standardbutton-cancel-128.png')
        QtGui.QAction(icon,
                      self.tr('Remove'),
                      actions,
                      objectName='removeLayerAction',
                      statusTip=self.tr('Remove'),
                      shortcut=self.tr('Del'))

        icon = QtGui.QIcon(
            ':/trolltech/styles/commonstyle/images/standardbutton-yes-128.png')
        QtGui.QAction(icon,
                      self.tr('Show'),
                      actions,
                      objectName='showLayerAction',
                      statusTip=self.tr('Show the layer'))

        icon = QtGui.QIcon(
            ':/trolltech/styles/commonstyle/images/standardbutton-no-128.png')
        QtGui.QAction(icon,
                      self.tr('Hide'),
                      actions,
                      objectName='hideLayerAction',
                      statusTip=self.tr('Hide the layer'))

        return actions
Exemple #21
0
    def __init__(self, parent, **kwargs):
        '''Constructs a QtWindowListMenu object.

        The *parent* parameter is passed to the QMenu constructor.
        Although this parameter has the conventional default of 0,
        you will normally want to explicitly provide a parent object,
        since the later adding of this menu object to an action
        container (e.g. QMenuBar) does not cause a reparenting.
        The container is normally the natural choice for *parent*.

        '''

        super(QtWindowListMenu, self).__init__(parent, **kwargs)

        self.mdi = None
        self.setTitle(self.tr('&Windows'))
        self.aboutToShow.connect(self.syncWithMdiArea)

        self._stdGroup = QtGui.QActionGroup(self, exclusive=False)
        self._winGroup = QtGui.QActionGroup(self, exclusive=True)
        #, triggered=self.activateWindow)

        # @COMPATIBILITY: with pyside 1.0.1
        self._winGroup.triggered.connect(self.activateWindow)

        # Create the standard menu items.
        # @Note: Creation order must match the StandardAction enum values ;-)
        QtGui.QAction(self.tr('Cl&ose'),
                      self._stdGroup,
                      shortcut=self.tr('Ctrl+F4'),
                      statusTip=self.tr('Close the active window'))

        QtGui.QAction(self.tr('Close &All'),
                      self._stdGroup,
                      statusTip=self.tr('Close all the windows'))

        act = self._stdGroup.addAction('')
        act.setSeparator(True)

        QtGui.QAction(self.tr('&Tile'),
                      self._stdGroup,
                      statusTip=self.tr('Tile the windows'))

        QtGui.QAction(self.tr('&Cascade'),
                      self._stdGroup,
                      statusTip=self.tr('Cascade the windows'))

        act = self._stdGroup.addAction('')
        act.setSeparator(True)

        QtGui.QAction(self.tr('Ne&xt'),
                      self._stdGroup,
                      statusTip=self.tr('Move the focus to the next window'))

        QtGui.QAction(
            self.tr('Pre&vious'),
            self._stdGroup,
            statusTip=self.tr('Move the focus to the previous window'))

        act = self._stdGroup.addAction('')
        act.setSeparator(True)

        self.addActions(self._stdGroup.actions())

        self._winMap = {}  # QMap<QAction *, QMdiSubWindow *>
        self._iconMap = {}  # QMap<const QMdiSubWindow *, QIcon>
        self._defIcon = QtGui.QIcon()