Exemple #1
0
 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
Exemple #2
0
    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()))
Exemple #3
0
 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)