def set_data(self, mime_data): """Set mime_data to clipboard. Args: mime_data: QtCore.QMimeData """ if not settings.get_disconnect(): logging.debug(str(self.mode)) self.clip_board.setMimeData(mime_data, self.mode)
def on_owner_destroyed(self): """X11 also has the concept of ownership. If you change the selection within a window, X11 will only notify the owner and the previous owner of the change, i.e. it will not notify all applications that the selection or clipboard data changed. """ logging.debug('Owner destroyed!') if not settings.get_disconnect(): self.new_item_callback(self.clipboard_contents)
def _disconnect_icon(): """Determine which icon to display if disconnect menu is toggled on/off. Returns: QtGui.QIcon """ # Clipboard _disconnected and ignoring changes if settings.get_disconnect(): return QtGui.QIcon.fromTheme('network-offline', QtGui.QIcon(resource_filename('icons/disconnect.png'))) # Clipboard connected and monitoring else: return QtGui.QIcon.fromTheme('network-transmit-receive', QtGui.QIcon(resource_filename('icons/connect.png')))
def setup_menu(self): """Create right click menu. """ # Right click menu menu = QtGui.QMenu() # Open or hide main window toggle_act = menu.addAction(QtGui.QIcon.fromTheme('search', QtGui.QIcon( resource_filename('icons/search.png'))), 'Toggle') menu.addSeparator() # Disconnect from OS clipboard(s) self.disconnect_act = menu.addAction(_disconnect_icon(), 'Disconnect') self.disconnect_act.setCheckable(True) self.disconnect_act.setChecked(settings.get_disconnect()) # Open settings dialog settings_act = menu.addAction(QtGui.QIcon.fromTheme('emblem-system', QtGui.QIcon(resource_filename( 'icons/settings.png'))), 'Settings') # Open about dialog about_act = menu.addAction(QtGui.QIcon.fromTheme('help-about', QtGui.QIcon( resource_filename('icons/about.png'))), 'About') menu.addSeparator() # Exit application exit_act = menu.addAction(QtGui.QIcon.fromTheme('application-exit', QtGui.QIcon( resource_filename('icons/exit.png'))), 'Quit') # Connect menu triggered action to functions self.connect(toggle_act, QtCore.SIGNAL('triggered()'), self._emit_toggle_window) self.connect(self.disconnect_act, QtCore.SIGNAL('triggered()'), self._disconnect) self.connect(settings_act, QtCore.SIGNAL('triggered()'), self._emit_open_settings) self.connect(about_act, QtCore.SIGNAL("triggered()"), self._about) self.connect(exit_act, QtCore.SIGNAL("triggered()"), self._exit) self.setContextMenu(menu)
def _disconnect(self): """Save and change icon for disconnecting from clipboard. """ settings.set_disconnect(not settings.get_disconnect()) self.disconnect_act.setIcon(_disconnect_icon())
def on_data_changed(self): """Send clipboard mime data back to master clipboard class. """ if not settings.get_disconnect(): self.clipboard_contents = self.clip_board.mimeData(self.mode) self.new_item_callback(self.clipboard_contents)
def clear(self): if not settings.get_disconnect(): self.clip_board.clear(mode=self.mode)