def save_figure(self, *args): filetypes = self.mplwidget.get_supported_filetypes_grouped() sorted_filetypes = filetypes.items() sorted_filetypes.sort() default_filetype = self.mplwidget.get_default_filetype() output_dir = CONF.get('paths', 'output_dir') start = os.path.join(output_dir, 'image.') + default_filetype filters = [] selectedFilter = None for name, exts in sorted_filetypes: exts_list = " ".join(['*.%s' % ext for ext in exts]) filtre = '%s (%s)' % (name, exts_list) if default_filetype in exts: selectedFilter = filtre filters.append(filtre) filters = ';;'.join(filters) fname = QFileDialog.getSaveFileName(self, "Enregistrer l'image", start, filters, selectedFilter) if fname: CONF.set('paths', 'output_dir', os.path.dirname(str(fname))) try: self.mplwidget.print_figure(unicode(fname)) except Exception, e: QMessageBox.critical(self, "Erreur en enregistrant le fichier", str(e), QMessageBox.Ok, QMessageBox.NoButton)
def save_figure(self, *args): filetypes = self.mplwidget.get_supported_filetypes_grouped() sorted_filetypes = filetypes.items() sorted_filetypes.sort() default_filetype = self.mplwidget.get_default_filetype() output_dir = CONF.get('paths', 'output_dir') start = os.path.join(output_dir, 'image.') + default_filetype filters = [] selectedFilter = None for name, exts in sorted_filetypes: exts_list = " ".join(['*.%s' % ext for ext in exts]) filtre = '%s (%s)' % (name, exts_list) if default_filetype in exts: selectedFilter = filtre filters.append(filtre) filters = ';;'.join(filters) fname = QFileDialog.getSaveFileName( self, "Enregistrer l'image", start, filters, selectedFilter) if fname: CONF.set('paths', 'output_dir', os.path.dirname(str(fname))) try: self.mplwidget.print_figure( unicode(fname) ) except Exception, e: QMessageBox.critical( self, "Erreur en enregistrant le fichier", str(e), QMessageBox.Ok, QMessageBox.NoButton)
def set_date(self, date=None): if date == None: self._date = CONF.get('simulation', 'datesim') else: self._date = date CONF.set('simulation', 'datesim',str(self._date)) print self._date
def set_date(self, date=None): if date == None: self._date = CONF.get('simulation', 'datesim') else: self._date = date CONF.set('simulation', 'datesim', str(self._date)) print self._date
def saveCsv(self): output_dir = CONF.get('paths', 'output_dir') user_path = os.path.join(output_dir, 'sans-titre.csv') fname = QFileDialog.getSaveFileName(self, u"Exporter la table", user_path, u"CSV (séparateur: point virgule) (*.csv)") if fname: CONF.set('paths', 'output_dir', os.path.dirname(str(fname))) try: now = datetime.now() csvfile = open(fname, 'wb') writer = UnicodeWriter(csvfile, dialect= csv.excel, delimiter=';') writer.writerow([u'OpenFisca']) writer.writerow([u'Calculé le %s à %s' % (now.strftime('%d-%m-%Y'), now.strftime('%H:%M'))]) writer.writerow([u'Système socio-fiscal au %s' % CONF.get('simulation', 'datesim')]) writer.writerow([]) for row in self.data: if not row.desc in ('root'): outlist = [row.desc] for val in row.vals: outlist.append(locale.str(val)) writer.writerow(outlist) csvfile.close() except Exception, e: QMessageBox.critical( self, "Error saving file", str(e), QMessageBox.Ok, QMessageBox.NoButton)
def save_table(self, table_format=None): if table_format is None: table_format = CONF.get('paths', 'table') output_dir = CONF.get('paths', 'output_dir') filename = 'sans-titre.' + table_format user_path = os.path.join(output_dir, filename) extension = table_format.upper() + " (*." + table_format + ")" fname = QFileDialog.getSaveFileName(self, u"Exporter la table", user_path, extension) if fname: CONF.set('paths', 'output_dir', os.path.dirname(str(fname))) try: if table_format == "xls": writer = ExcelWriter(str(fname)) df = self.create_dataframe() descr = self.create_description() df.to_excel(writer, "table", index=True, header=False) descr.to_excel(writer, "description", index=False, header=False) writer.save() elif table_format == "csv": # TODO: use DataFrame's ? now = datetime.now() csvfile = open(fname, 'wb') writer = UnicodeWriter(csvfile, dialect=csv.excel, delimiter=';') for row in self.data: if not row.desc in ('root'): outlist = [row.desc] for val in row.vals: outlist.append(locale.str(val)) writer.writerow(outlist) writer.writerow([u'OpenFisca']) writer.writerow([ u'Calculé le %s à %s' % (now.strftime('%d-%m-%Y'), now.strftime('%H:%M')) ]) writer.writerow([ u'Système socio-fiscal au %s' % CONF.get('simulation', 'datesim') ]) writer.writerow([]) csvfile.close() except Exception, e: QMessageBox.critical(self, "Error saving file", str(e), QMessageBox.Ok, QMessageBox.NoButton)
def set_openfica_root_dir(self, directory = None): ''' Sets the directory where to find the openfisca source and adjust some directories TODO à améliorer ''' if directory == None: # self.openfica_root_dir = "C:/Users/Utilisateur/My Documents/Aptana Studio 3 Workspace/web/srcopen" self.openfica_root_dir = "/home/florent/workspace/openfisca/srcopen/" else: self.openfica_root_dir = directory CONF.set('paths', 'data_dir',os.path.join(self.openfica_root_dir,'data'))
def set_config(self, directory = None, nmen=1): ''' Sets the directory where to find the openfisca source and adjust some directories ''' if directory == None: # TODO REMOVE dir = "C:/Users/Utilisateur/My Documents/Aptana Studio 3 Workspace/web/srcopen" # dir = "/home/florent/workspace/openfisca/srcopen/" cmd_folder = os.path.realpath(os.path.abspath(os.path.split(inspect.getfile( inspect.currentframe() ))[0])) predirectory = os.path.dirname(cmd_folder) directory = os.path.join(predirectory,'srcopen') CONF.set('paths', 'data_dir',os.path.join(directory,'data')) CONF.set('simulation', 'nmen',1)
def set_config(self, directory = None, nmen = None): ''' Sets the directory where to find the openfisca source and adjust some directories ''' if directory is None: cmd_folder = os.path.realpath(os.path.abspath(os.path.split(inspect.getfile( inspect.currentframe() ))[0])) predirectory = os.path.dirname(cmd_folder) directory = os.path.join(predirectory,'srcopen') CONF.set('paths', 'data_dir', os.path.join(directory,'data')) if nmen is None: nmen = 1 CONF.set('simulation', 'nmen', nmen)
def loadXml(self): reformes_dir = CONF.get('paths', 'reformes_dir') fileName = QFileDialog.getOpenFileName(self, u"Ouvrir une réforme", reformes_dir, u"Paramètres OpenFisca (*.ofp)") if not fileName == '': try: loader = XmlReader(str(fileName)) CONF.set('simulation', 'datesim',str(loader._date)) self.initialize() self._rootNode.load(loader.tree) self.changed() except Exception, e: QMessageBox.critical( self, "Erreur", u"Impossible de lire le fichier : " + str(e), QMessageBox.Ok, QMessageBox.NoButton)
def set_config(self, directory=None, nmen=1): ''' Sets the directory where to find the openfisca source and adjust some directories ''' if directory == None: # TODO REMOVE dir = "C:/Users/Utilisateur/My Documents/Aptana Studio 3 Workspace/web/srcopen" # dir = "/home/florent/workspace/openfisca/srcopen/" cmd_folder = os.path.realpath( os.path.abspath( os.path.split(inspect.getfile(inspect.currentframe()))[0])) predirectory = os.path.dirname(cmd_folder) directory = os.path.join(predirectory, 'srcopen') CONF.set('paths', 'data_dir', os.path.join(directory, 'data')) CONF.set('simulation', 'nmen', 1)
def set_config(self, directory=None, nmen=None): ''' Sets the directory where to find the openfisca source and adjust some directories ''' # if directory is None: # cmd_folder = os.path.realpath(os.path.abspath(os.path.split(inspect.getfile( inspect.currentframe() ))[0])) # predirectory = os.path.dirname(cmd_folder) # directory = os.path.join(predirectory,'../../srcopen') # # # CONF.set('paths', 'data_dir', os.path.join(directory,'data')) if nmen is None: nmen = 1 CONF.set('simulation', 'nmen', nmen)
def save_table(self, table_format = None): if table_format is None: table_format = CONF.get('paths', 'table') output_dir = CONF.get('paths', 'output_dir') filename = 'sans-titre.' + table_format user_path = os.path.join(output_dir, filename) extension = table_format.upper() + " (*." + table_format + ")" fname = QFileDialog.getSaveFileName(self, u"Exporter la table", user_path, extension) if fname: CONF.set('paths', 'output_dir', os.path.dirname(str(fname))) try: if table_format == "xls": writer = ExcelWriter(str(fname)) df = self.create_dataframe() descr = self.create_description() df.to_excel(writer, "table", index=True, header= False) descr.to_excel(writer, "description", index = False, header=False) writer.save() elif table_format =="csv": # TODO: use DataFrame's ? now = datetime.now() csvfile = open(fname, 'wb') writer = UnicodeWriter(csvfile, dialect= csv.excel, delimiter=';') for row in self.data: if not row.desc in ('root'): outlist = [row.desc] for val in row.vals: outlist.append(locale.str(val)) writer.writerow(outlist) writer.writerow([u'OpenFisca']) writer.writerow([u'Calculé le %s à %s' % (now.strftime('%d-%m-%Y'), now.strftime('%H:%M'))]) writer.writerow([u'Système socio-fiscal au %s' % CONF.get('simulation', 'datesim')]) writer.writerow([]) csvfile.close() except Exception, e: QMessageBox.critical( self, "Error saving file", str(e), QMessageBox.Ok, QMessageBox.NoButton)
def loadXml(self): reformes_dir = CONF.get('paths', 'reformes_dir') fileName = QFileDialog.getOpenFileName( self, u"Ouvrir une réforme", reformes_dir, u"Paramètres OpenFisca (*.ofp)") if not fileName == '': try: loader = XmlReader(str(fileName)) CONF.set('simulation', 'datesim', str(loader._date)) self.initialize() self._rootNode.load(loader.tree) self.changed() except Exception, e: QMessageBox.critical( self, "Erreur", u"Impossible de lire le fichier : " + str(e), QMessageBox.Ok, QMessageBox.NoButton)
def saveCsv(self): output_dir = CONF.get('paths', 'output_dir') user_path = os.path.join(output_dir, 'sans-titre.csv') fname = QFileDialog.getSaveFileName( self, u"Exporter la table", user_path, u"CSV (séparateur: point virgule) (*.csv)") if fname: CONF.set('paths', 'output_dir', os.path.dirname(str(fname))) try: now = datetime.now() csvfile = open(fname, 'wb') writer = UnicodeWriter(csvfile, dialect=csv.excel, delimiter=';') writer.writerow([u'OpenFisca']) writer.writerow([ u'Calculé le %s à %s' % (now.strftime('%d-%m-%Y'), now.strftime('%H:%M')) ]) writer.writerow([ u'Système socio-fiscal au %s' % CONF.get('simulation', 'datesim') ]) writer.writerow([]) for row in self.data: if not row.desc in ('root'): outlist = [row.desc] for val in row.vals: outlist.append(locale.str(val)) writer.writerow(outlist) csvfile.close() except Exception, e: QMessageBox.critical(self, "Error saving file", str(e), QMessageBox.Ok, QMessageBox.NoButton)
def modeCasType(self): self.mode = 'castype' CONF.set('simulation', 'nmen', 1) self.changed_bareme()
def modeBareme(self): self.mode = 'bareme' NMEN = CONF.get('simulation', 'nmen') if NMEN == 1: CONF.set('simulation', 'nmen', 101) print "date", CONF.get('simulation', 'datesim') self.changed_bareme()
def modeBareme(self): self.mode = 'bareme' NMEN = CONF.get('simulation', 'nmen') if NMEN == 1: CONF.set('simulation', 'nmen', 101) self.changed_bareme()