def addRecentProject(self, project): # print '>> addRecentProject ', project if project is not None: if usePyQt4: recent_projects_max = getDefaultValue(app_settings, '', 'recent_projects_max') if project not in self.recentProjects: self.recentProjects.prepend(QtCore.QString(project)) while self.recentProjects.count() > recent_projects_max: self.recentProjects.takeLast() recentProjects = QtCore.QVariant( self.recentProjects ) if self.recentProjects else QtCore.QVariant() app_settings.setValue('RecentProjects', recentProjects) else: recent_projects_max = getDefaultValue(app_settings, '', 'recent_projects_max') if project not in self.recentProjects: self.recentProjects.insert(0, project) while len(self.recentProjects) > recent_projects_max: self.recentProjects.pop() app_settings.setValue('RecentProjects', self.recentProjects) print '* project added recentProjects =', self.recentProjects print '* recentProjects =', self.recentProjects
def dropEvent(self, event): # import os if DEBUG_MODE: print ">> WorkArea.dropEvent" file_list = [] mimedata = event.mimeData() if mimedata.hasFormat('application/x-text'): # decode drop stuff data = mimedata.data('application/x-text') stream = QtCore.QDataStream(data, QtCore.QIODevice.ReadOnly) if usePyQt4: filename = QtCore.QString() else: filename = '' if not usePyQt5: if usePySide: filename = stream.readString() else: stream >> filename else: filename = stream.readBytes() if DEBUG_MODE: print '* read itemFilename = %s' % (filename) file_list.append(filename) event.setDropAction(QtCore.Qt.CopyAction) event.accept() elif mimedata.hasFormat('text/uri-list'): data = str(mimedata.data('text/uri-list').data()) #print data for item in data.split(): filename = str(QtCore.QUrl(item).toLocalFile()) (name, ext) = os.path.splitext(os.path.basename(filename)) if DEBUG_MODE: print ':: %s (%s)' % (filename, ext) if ext == '.xml': file_list.append(filename) else: event.ignore() for file_name in file_list: self.insertNodeNet(file_name, self.mapToScene(event.pos()))
def addRecentNetwork(self, network): # if network is not None: if usePyQt4: recent_networks_max = getDefaultValue(app_settings, '', 'recent_networks_max') if network not in self.recentNetworks: self.recentNetworks.prepend(QtCore.QString(network)) while self.recentNetworks.count() > recent_networks_max: self.recentNetworks.takeLast() recentNetworks = QtCore.QVariant( self.recentNetworks ) if self.recentNetworks else QtCore.QVariant() app_settings.setValue('RecentNetworks', recentNetworks) else: recent_networks_max = getDefaultValue(app_settings, '', 'recent_networks_max') if network not in self.recentNetworks: self.recentNetworks.insert(0, network) while len(self.recentNetworks) > recent_networks_max: self.recentNetworks.pop() app_settings.setValue('RecentNetworks', self.recentNetworks)