def eventFilter(self, parent, event): """ Handle mouse click events for disabled widget state """ if event.type() == QEvent.MouseButtonRelease: if self.isDefault: return QObject.eventFilter(self, parent, event) self.openRequest.emit(self.image.pixmap()) return QObject.eventFilter(self, parent, event)
def eventFilter(self, parent, event): """ Handle mouse click events for disabled widget state """ if event.type() == QEvent.MouseButtonRelease: if self.isDefault: return QObject.eventFilter(self, parent, event) self.openRequest.emit(self.image.pixmap()) return QObject.eventFilter(self, parent, event)
def eventFilter( self, obj, event ): if self._scrollingEnabled: return QObject.eventFilter( self, obj, event ) else: if event.type() == QEvent.Wheel: return True else: print event.type() return QObject.eventFilter( self, obj, event )
def eventFilter(self, target, event): """ :param target: a QObject that contains the target widget, i.e the widget that got the handler installed. :type target: QObject :param event: the event to act upon. :type event: QEvent """ if event.type() == QEvent.KeyPress: # If we have a match on the QKeySequence we're looking for # we keep things safe by explicitly checking if the target # is the correct for our purpose. # In the case of the Search plugin, only the tab widget for # the search results ('right') is expected to act upon the # close event. if target.objectName() == 'mainTabs': index = target.currentIndex() if event.matches(QKeySequence.Close): target.tabCloseRequested.emit(index) # When we actually catches and acts upon an event, # we need to inform the eventHandler about this. return True # All events we didn't act upon must be forwarded return QObject.eventFilter(self, target, event)
def eventFilter(self, parent, event): """ Handle mouse click events for disabled widget state """ if event.type() == QEvent.MouseButtonRelease and self.extrainfo: self.showmessage() event.accept() return QObject.eventFilter(self, parent, event)
def eventFilter(self, parent, event): """ Handle mouse click events for disabled widget state """ if event.type() == QEvent.FocusIn: cmd = r'C:\Program Files\Common Files\Microsoft Shared\ink\TabTip.exe' os.startfile(cmd) return QObject.eventFilter(self, parent, event)
def eventFilter(self, target, event): """ :param target: a QObject that contains the target widget, i.e the widget that got the handler installed. :type target: QObject :param event: the event to act upon. :type event: QEvent """ if event.type() == QEvent.KeyPress: # If we have a match on the QKeySequence we're looking for # we keep things safe by explicitly checking if the target # is the correct for our purpose. # In the case of the Search plugin, only the tab widget for # the search results ('right') is expected to act upon the # close event. if target.objectName() == 'mainTabs': index = target.currentIndex() if event.matches(QKeySequence.Close): target.tabCloseRequested.emit(index) # When we actually catches and acts upon an event, # we need to inform the eventHandler about this. return True # All events we didn't act upon must be forwarded return QObject.eventFilter(self, target, event)
def eventFilter(self, viewport, event): view = viewport.parent() if event.type() == QEvent.MouseButtonPress and \ event.button() == Qt.LeftButton: index = view.indexAt(event.pos()) if index is not None: self._pos = event.pos() self._index = QPersistentModelIndex(index) elif event.type() == QEvent.MouseMove and self._pos is not None and \ ((self._pos - event.pos()).manhattanLength() >= QApplication.startDragDistance()): if self._index.isValid(): # Map to a QModelIndex in the model. index = self._index index = index.model().index(index.row(), index.column(), index.parent()) self._pos = None self._index = None self.dragStarted.emit(index) return QObject.eventFilter(self, view, event)
def eventFilter(self, viewport, event): view = viewport.parent() if event.type() == QEvent.MouseButtonPress and \ event.button() == Qt.LeftButton: index = view.indexAt(event.pos()) if index is not None: self._pos = event.pos() self._index = QPersistentModelIndex(index) elif event.type() == QEvent.MouseMove and self._pos is not None and \ ((self._pos - event.pos()).manhattanLength() >= QApplication.startDragDistance()): if self._index.isValid(): # Map to a QModelIndex in the model. index = self._index index = index.model().index(index.row(), index.column(), index.parent()) self._pos = None self._index = None self.dragStarted.emit(index) return QObject.eventFilter(self, view, event)
def eventFilter( self, obj, event ): " Event filter for the project name field " # Do not allow path separators if event.type() == QEvent.KeyPress: if event.key() == ord( os.path.sep ): return True return QObject.eventFilter( self, obj, event )
def eventFilter(self, obj, event): e = event.type() if e == QEvent.KeyPress and event.key() == Qt.Key_Escape: obj.hide() elif e == QEvent.WindowDeactivate: obj.hide() return QObject.eventFilter(self, obj, event)
def eventFilter( self, obj, event ): " Event filter for the project name field " # Do not allow path separators if event.type() == QEvent.KeyPress: if event.key() == ord( os.path.sep ): return True return QObject.eventFilter( self, obj, event )
def eventFilter(self, obj, event): e = event.type() if e == QEvent.KeyPress and event.key() == Qt.Key_Escape: obj.hide() elif e == QEvent.WindowDeactivate: obj.hide() return QObject.eventFilter(self, obj, event)
def eventFilter(self, obj, event): if obj is self.parent(): if event.type() == QEvent.GraphicsSceneMousePress: return self.mousePressEvent(event) elif event.type() == QEvent.GraphicsSceneMouseMove: return self.mouseMoveEvent(event) elif event.type() == QEvent.GraphicsSceneMouseRelease: return self.mouseReleaseEvent(event) return QObject.eventFilter(self, obj, event)
def eventFilter(self, obj, event): if obj is self.parent(): if event.type() == QEvent.GraphicsSceneMousePress: return self.mousePressEvent(event) elif event.type() == QEvent.GraphicsSceneMouseMove: return self.mouseMoveEvent(event) elif event.type() == QEvent.GraphicsSceneMouseRelease: return self.mouseReleaseEvent(event) return QObject.eventFilter(self, obj, event)
def eventFilter ( self, object, event ): """ Handles a Qt event by mapping it to a corresponding controller method (if any). """ adapter = self.processEvent( object, event ) if adapter is not None: return adapter.handled # Pass the request along to the superclass: return QObject.eventFilter( self, object, event )
def eventFilter(self, object, event): if event.type() in (QEvent.MouseMove, QEvent.MouseButtonPress, QEvent.HoverMove, QEvent.KeyPress, QEvent.KeyRelease, ): self.emit(SIGNAL("activity")) self.start(self.timeout) #commented this debug code, because it spits out way to much information. #uncomment if you're having trouble with the timeout detecting user #inactivity correctly to determine what it's detecting and ignoring #debug ("Activity: %s type %d" % (event, event.type())) #else: #debug("Ignored event: %s type %d" % (event, event.type())) return QObject.eventFilter(self, object, event)
def eventFilter(self, obj, event): if event.type() == QEvent.GraphicsSceneMouseMove: newX = obj.pos().x() newY = obj.pos().y() xitems = [ item for item in self.scene.graph.items() if item != obj and abs(item.x() - obj.pos().x()) <= self.threshold ] if len(xitems) > 0: view = self.scene.views()[0] item = min(xitems, key=lambda x: abs(x.x() - obj.pos().x())) self.linex.setLine(item.x(), view.mapToScene(0, 0).y(), item.x(), view.mapToScene(0, view.height()).y()) self.linex.setVisible(True) else: self.linex.setVisible(False) yitems = [ item for item in self.scene.graph.items() if item != obj and abs(item.y() - obj.pos().y()) <= self.threshold ] if len(yitems) > 0: view = self.scene.views()[0] item = min(yitems, key=lambda y: abs(y.y() - obj.pos().y())) self.liney.setLine( view.mapToScene(0, 0).x(), item.y(), view.mapToScene(view.width(), 0).x(), item.y()) self.liney.setVisible(True) else: self.liney.setVisible(False) elif event.type() == QEvent.GraphicsSceneMouseRelease: newX = obj.pos().x() newY = obj.pos().y() if self.linex.isVisible(): newX = self.linex.line().x1() self.linex.setVisible(False) if self.liney.isVisible(): newY = self.liney.line().y1() self.liney.setVisible(False) obj.setPos(newX, newY) return QObject.eventFilter(self, obj, event)
def eventFilter(self, obj, event): if event and event.type() == QEvent.GraphicsSceneMouseDoubleClick: self.channel.on_double_clicked() return True if event.type() == QEvent.KeyPress: if event.key() == Qt.Key_Backtab: self.channel.next_focus(False) return True elif event.key() == Qt.Key_Tab: self.channel.next_focus() return True return QObject.eventFilter(self, obj, event)
def eventFilter(self, receiver, event): if event.type() == QEvent.Close and receiver is self.__scheme: self.signal_manager().stop() # Notify the widget instances. for widget in list(self.__widget_for_node.values()): widget.close() widget.saveSettings() widget.onDeleteWidget() event.accept() return True return QObject.eventFilter(self, receiver, event)
def eventFilter(self, receiver, event): if event.type() == QEvent.Close and receiver is self.__scheme: self.signal_manager().stop() # Notify the widget instances. for widget in list(self.__widget_for_node.values()): widget.close() widget.saveSettings() widget.onDeleteWidget() event.accept() return True return QObject.eventFilter(self, receiver, event)
def eventFilter(self, obj, event): if event.type() == QEvent.Resize: if self.__splitter.orientation() == Qt.Vertical: size = event.size().height() else: size = event.size().width() if self.__expanded and size == 0: self.__action.setChecked(False) self.__expanded = False elif not self.__expanded and size > 0: self.__action.setChecked(True) self.__expanded = True return QObject.eventFilter(self, obj, event)
def eventFilter(self, obj, event): if event.type() == QEvent.DragEnter: # we need to accept this event explicitly to be able to receive QDropEvents! event.accept() if event.type() == QEvent.Drop: md = event.mimeData() urls = md.urls() if (urls and urls[0].scheme() == 'file'): # for some reason, this doubles up the intro slash filepath = urls[0].path().mid(1) self.ui.le_exe.setText(filepath) self.modify = True self.ui.btn_apply.setEnabled(True) event.accept() return QObject.eventFilter(self, obj, event)
def eventFilter(self, obj, event): if event.type() == QEvent.Resize: if self.__splitter.orientation() == Qt.Vertical: size = event.size().height() else: size = event.size().width() if self.__expanded and size == 0: self.__action.setChecked(False) self.__expanded = False elif not self.__expanded and size > 0: self.__action.setChecked(True) self.__expanded = True return QObject.eventFilter(self, obj, event)
def eventFilter(self, obj, event): if event.type() == QEvent.StatusTip and \ not isinstance(event, QuickHelpTipEvent) and \ hasattr(obj, "whatsThis") and \ isinstance(obj.whatsThis, Callable): tip = event.tip() try: text = obj.whatsThis() except Exception: text = None if text: ev = QuickHelpTipEvent(tip, text if tip else "") return QCoreApplication.sendEvent(obj, ev) return QObject.eventFilter(self, obj, event)
def eventFilter(self, obj, event): if event.type() == QEvent.StatusTip and \ not isinstance(event, QuickHelpTipEvent) and \ hasattr(obj, "whatsThis") and \ isinstance(obj.whatsThis, Callable): tip = event.tip() try: text = obj.whatsThis() except Exception: text = None if text: ev = QuickHelpTipEvent(tip, text if tip else "") return QCoreApplication.sendEvent(obj, ev) return QObject.eventFilter(self, obj, event)
def eventFilter(self, receiver, event): if event.type() == QEvent.Close and receiver is self.__scheme: self.signal_manager().stop() # Notify the widget instances. for widget in self.__widget_for_node.values(): widget.close() if not widget._settingsFromSchema: # First save global settings if necessary. widget.saveSettings() widget.onDeleteWidget() event.accept() return True return QObject.eventFilter(self, receiver, event)
def eventFilter(self, obj, event): etype = event.type() if etype == QEvent.KeyPress: key = event.key() if key == Qt.Key_Down: self.moveCurrent(1, 0) return True elif key == Qt.Key_Up: self.moveCurrent(-1, 0) return True elif key == Qt.Key_Tab: self.moveCurrent(0, 1) return True elif key == Qt.Key_Enter or key == Qt.Key_Return: self.activateCurrent() return True return QObject.eventFilter(self, obj, event)
def eventFilter(self, obj, event): etype = event.type() if etype == QEvent.KeyPress: key = event.key() if key == Qt.Key_Down: self.moveCurrent(1, 0) return True elif key == Qt.Key_Up: self.moveCurrent(-1, 0) return True elif key == Qt.Key_Tab: self.moveCurrent(0, 1) return True elif key == Qt.Key_Enter or key == Qt.Key_Return: self.activateCurrent() return True return QObject.eventFilter(self, obj, event)
def eventFilter(self, receiver, event): if event.type() == QEvent.Close and receiver is self.__scheme: self.signal_manager().stop() # Notify the widget instances. for widget in self.__widget_for_node.values(): widget.close() if not widget._settingsFromSchema: # First save global settings if necessary. widget.saveSettings() widget.onDeleteWidget() event.accept() return True return QObject.eventFilter(self, receiver, event)
def keyPressed(self, obj, event): if (event.matches(QtGui.QKeySequence.Italic) or event.matches(QtGui.QKeySequence.Underline) or event.matches(QtGui.QKeySequence.Bold)): self.execute(obj, event) return True if self.isShortCutEvent(event): return self.execute(obj, event) if self.isPasteEvent(event): return self.execute(obj, 'onPaste') elif self.isArrowEvent(event): return self.execute(obj, 'onArrow', self.arrowKeys[event.key()]) elif event.key() == Qt.Key_Backtab: return self.execute(obj, 'onOutdent') elif event.key() == Qt.Key_Tab: return self.execute(obj, 'onIndent') return QObject.eventFilter(self, obj, event)
def eventFilter(self, object, event): """ Reimplements the **QObject.eventFilter** method. :param object: Object. :type object: QObject :param event: Event. :type event: QEvent :return: Event filtered. :rtype: bool """ if event.type() == QEvent.KeyPress: if event.key() in (Qt.Key_Enter, Qt.Key_Return): object.search() elif event.key() in (Qt.Key_Escape,): object.close() return True else: return QObject.eventFilter(self, object, event)
def eventFilter(self, receiver, event): if event.type() == events.NodeEvent.NodeActivateRequest and receiver in self.__widget_for_node: widget = self.__widget_for_node[receiver] widget.show() widget.raise_() widget.activateWindow() if event.type() == QEvent.Close and receiver is self.__scheme: self.signal_manager().stop() # Notify the widget instances. for widget in list(self.__widget_for_node.values()): widget.close() widget.saveSettings() widget.onDeleteWidget() event.accept() return True return QObject.eventFilter(self, receiver, event)
def eventFilter(self, receiver, event): if event.type() == events.NodeEvent.NodeActivateRequest and \ receiver in self.__widget_for_node: widget = self.__widget_for_node[receiver] widget.show() widget.raise_() widget.activateWindow() if event.type() == QEvent.Close and receiver is self.__scheme: self.signal_manager().stop() # Notify the widget instances. for widget in list(self.__widget_for_node.values()): widget.close() widget.saveSettings() widget.onDeleteWidget() event.accept() return True return QObject.eventFilter(self, receiver, event)
def eventFilter( self, obj, event ): if event.type() == QEvent.GraphicsSceneMouseMove: newX = obj.pos().x() newY = obj.pos().y() xitems = [ item for item in self.scene.graph.items() if item != obj and abs( item.x() - obj.pos().x() ) <= self.threshold ] if len( xitems ) > 0: view = self.scene.views()[0] item = min( xitems, key = lambda x: abs( x.x() - obj.pos().x() ) ) self.linex.setLine( item.x(), view.mapToScene( 0, 0 ).y(), item.x(), view.mapToScene( 0, view.height() ).y() ) self.linex.setVisible( True ) else: self.linex.setVisible( False ) yitems = [ item for item in self.scene.graph.items() if item != obj and abs( item.y() - obj.pos().y() ) <= self.threshold ] if len( yitems ) > 0: view = self.scene.views()[0] item = min( yitems, key = lambda y: abs( y.y() - obj.pos().y() ) ) self.liney.setLine( view.mapToScene( 0, 0 ).x(), item.y(), view.mapToScene( view.width(), 0 ).x(), item.y() ) self.liney.setVisible( True ) else: self.liney.setVisible( False ) elif event.type() == QEvent.GraphicsSceneMouseRelease: newX = obj.pos().x() newY = obj.pos().y() if self.linex.isVisible(): newX = self.linex.line().x1() self.linex.setVisible( False ) if self.liney.isVisible(): newY = self.liney.line().y1() self.liney.setVisible( False ) obj.setPos( newX, newY ) return QObject.eventFilter( self, obj, event )
def eventFilter(self, receiver, event): """will be called for all events""" from util import logDebug if event.type() in self.events: # ignore unknown event types name = self.events[event.type()] if 'all' in Debug.events or name in Debug.events: if hasattr(event, 'key'): value = self.keys[event.key()] elif hasattr(event, 'text'): value = str(event.text()) else: value = '' if value: value = '(%s)' % value msg = '%s%s->%s' % (name, value, receiver) if hasattr(receiver, 'text'): msg += '(%s)' % receiver.text() elif hasattr(receiver, 'objectName'): msg += '(%s)' % receiver.objectName() logDebug(msg) return QObject.eventFilter(self, receiver, event)
def eventFilter(self, obj, event): if event.type() == QEvent.MouseButtonPress: self.buttonDownPos = event.pos() self.buttonDownObj = obj self.button = event.button() elif event.type() == QEvent.MouseMove and obj is self.buttonDownObj: if (self.buttonDownPos - event.pos()).manhattanLength() > \ QApplication.startDragDistance() and \ not self.buttonDownObj.hitButton(event.pos()): # Process the widget's mouse event, before starting the # drag operation, so the widget can update its state. obj.mouseMoveEvent(event) self.dragStartOperationRequested.emit(obj) obj.setDown(False) self.button = None self.buttonDownPos = None self.buttonDownObj = None return True # Already handled return QObject.eventFilter(self, obj, event)
def eventFilter(self, obj, event): if event.type() == QEvent.MouseButtonPress: self.buttonDownPos = event.pos() self.buttonDownObj = obj self.button = event.button() elif event.type() == QEvent.MouseMove and obj is self.buttonDownObj: if (self.buttonDownPos - event.pos()).manhattanLength() > \ QApplication.startDragDistance() and \ not self.buttonDownObj.hitButton(event.pos()): # Process the widget's mouse event, before starting the # drag operation, so the widget can update its state. obj.mouseMoveEvent(event) self.dragStartOperationRequested.emit(obj) obj.setDown(False) self.button = None self.buttonDownPos = None self.buttonDownObj = None return True # Already handled return QObject.eventFilter(self, obj, event)
def eventFilter(self, target, event): """Overrided method to catch and act upon various ``QEvent`s. :param target: The target ``QWidget`` where the event was generated from. :type target: QObject :param event: The ``QEvent`` that was generated. :type event: QEvent """ if event.type() == QEvent.KeyPress: # If we have a match on the QKeySequence we're looking for # we keep things safe by explicitly checking if the target # is the correct for our purpose. # In the case of the Search plugin, only the tab widget for # the search results ('right') is expected to act upon the # close event. if target.objectName() == 'right': index = target.currentIndex() if event.matches(QKeySequence.Close): target.tabCloseRequested.emit(index) # When we actually catches and acts upon an event, # we need to inform the eventHandler about this. return True elif event.matches(QKeySequence.Find): widget = target.widget(index) state = widget.filterBox.isVisible() #widget.filterBox.setVisible(not state) #widget.filterBox.onVisibilityChanged(not state) widget.onFilterBoxVisibilityChanged(not state) return True # Retranslate the ui if we catch the LanguageChange event elif event.type() == QEvent.LanguageChange: if target.objectName() == 'SearchPlugin': target.retranslate() return True # All events we didn't act upon must be forwarded return QObject.eventFilter(self, target, event)
def eventFilter(self, target, event): """Overrided method to catch and act upon various ``QEvent`s. :param target: The target ``QWidget`` where the event was generated from. :type target: QObject :param event: The ``QEvent`` that was generated. :type event: QEvent """ if event.type() == QEvent.KeyPress: # If we have a match on the QKeySequence we're looking for # we keep things safe by explicitly checking if the target # is the correct for our purpose. # In the case of the Search plugin, only the tab widget for # the search results ('right') is expected to act upon the # close event. if target.objectName() == 'right': index = target.currentIndex() if event.matches(QKeySequence.Close): target.tabCloseRequested.emit(index) # When we actually catches and acts upon an event, # we need to inform the eventHandler about this. return True elif event.matches(QKeySequence.Find): widget = target.widget(index) state = widget.filterBox.isVisible() #widget.filterBox.setVisible(not state) #widget.filterBox.onVisibilityChanged(not state) widget.onFilterBoxVisibilityChanged(not state) return True # Retranslate the ui if we catch the LanguageChange event elif event.type() == QEvent.LanguageChange: if target.objectName() == 'SearchPlugin': target.retranslate() return True # All events we didn't act upon must be forwarded return QObject.eventFilter(self, target, event)
def eventFilter(self, obj, event): e = event.type() if e == QEvent.WindowDeactivate: obj.hide() return QObject.eventFilter(self, obj, event)
def eventFilter(self, obj, event): e = event.type() if e == QEvent.WindowDeactivate: obj.accept() return QObject.eventFilter(self, obj, event)
def eventFilter(self, obj, event): if event.type() == QEvent.KeyPress: if self.inputKeyPressEvent(event): return True return QObject.eventFilter(self, obj, event)
def eventFilter(self, receiver, event): if event.type() == QEvent.ToolTip: return True return QObject.eventFilter(self, receiver, event)
def eventFilter(self, obj, event): if event.type() == QEvent.ContextMenu: return True if event.type() == QEvent.KeyPress: return self.keyPressed(obj, event) return QObject.eventFilter(self, obj, event)
def eventFilter(self, receiver, event): if event.type() == QEvent.ToolTip: return True return QObject.eventFilter(self, receiver, event)
def eventFilter(self, obj, event): e = event.type() if e == QEvent.Wheel: obj.onWheelEvent(event) return False return QObject.eventFilter(self, obj, event)
def eventFilter(self, obj, event): if event.type() == QEvent.KeyboardLayoutChange: self.interface.on_keys_changed() return QObject.eventFilter(obj, event)
def eventFilter(self, obj, event): e = event.type() if e == QEvent.Wheel: obj.onWheelEvent( event ) return False return QObject.eventFilter( self, obj, event )
def eventFilter(self, obj, event): if event.type() == QEvent.KeyboardLayoutChange: self.interface.on_keys_changed() return QObject.eventFilter(obj, event)